Comment corriger l'erreur OLE 8004013F sur Linux

Comment corriger l'erreur OLE 8004013F sur Linux

Pour résoudre l'erreur OLE 8004013F sous Linux avec Wine, il est essentiel d'identifier les bibliothèques manquantes et d'effectuer les ajustements nécessaires dans votre code.

Si vous essayez d'exécuter une base de données ou un macro dans un environnement basé sur Wine sur une quelconque implémentation de GNU/Linux, vous pourriez rencontrer un message d'erreur. À un moment donné lors de l'exécution du programme, vous pourriez finalement voir une boîte OLE Error 8004013F. Votre script cessera alors immédiatement d'être exécuté. Si cela se produit, il est très probable qu'il vous manque une bibliothèque nécessaire au fonctionnement de votre script. Dans un client Windows natif, ces bibliothèques sont utilisées pour faire correspondre des objets à l'intérieur de fichiers avec leur hôte parent. Linux n'a pas cette capacité, car chaque programme exécuté dans un serveur X gère les choses à sa manière.

Dans un environnement Microsoft Windows natif, Delphi peut utiliser un petit morceau de code pour ouvrir Excel. Si vous souhaitiez qu'une instance intégrée et liée d'Excel fonctionne avec différents objets, vous auriez peut-être utilisé eclApp:=CreateOleObject(‘Excel.Application’); pour ce faire. Sous Linux, vous auriez même essayé d'utiliser OpenOffice de cette manière. Si vous trouvez que Delphi vous envoie l'effroyable erreur 8004013F après avoir tenté de créer un objet OLE avec une instance du code eclApp:=CreateOleObject(‘com.sun.star.ServiceManager’);, vous souffrez probablement du même problème de dépendance. Premièrement, examinez votre code pour toute faute d'orthographe. Ce sont les causes les plus courantes d'erreurs, même avant que les dépendances ne soient en jeu. Une fois que vous êtes sûr d'avoir tout écrit correctement, vous pouvez procéder à la récupération des bibliothèques nécessaires.

Bibliothèques OLE nécessaires

Vous pourriez également rencontrer la même erreur si vous tentiez d'utiliser une application d'organisation Windows appelée keynote-nf, et si c'est le cas, vous pouvez utiliser le même processus pour y remédier. Le fichier keynote.exe ne vient pas avec un installateur, il est donc courant de le copier dans le répertoire Program Files. Bien qu'il puisse fonctionner, vous pourriez rencontrer l'erreur 8004013F mentionnée ci-dessus ou une autre exception 80004001. Dans les deux cas, créez un répertoire à l'intérieur de Program Files avec la commande mkdir ou votre gestionnaire de fichiers graphique. Nommez-le KeyNote-NF et déplacez le binaire keynote.exe à l'intérieur.

Si vous avez accès à une partition Windows XP, Vista, 7, 8, 8.1 ou 10, vous voudrez peut-être essayer de copier le fichier msftedit.dll depuis le répertoire C:\Windows\system32\ vers le répertoire KeyNote-NF que vous avez créé. Vous devriez également copier le fichier msls31.dll. Vous pourriez obtenir ces deux fichiers à partir d'un CD d'installation également, mais vous devrez utiliser la commande expand pour les décompresser. Dans tous les cas, exécutez le programme et vous devriez constater qu'il fonctionne correctement.

Thunar, Nautilus et d'autres gestionnaires de fichiers similaires identifieront keynote.exe comme un exécutable DOS, ce que vous pouvez ignorer en toute sécurité. Exécutez-le simplement comme vous l'aviez fait précédemment. Lorsque vous cliquez avec le bouton droit pour accéder à un menu contextuel, vous pourriez même obtenir une option vous encourageant à l'exécuter sous Wine. Sélectionnez cette option pour le démarrer. Exécuter le programme depuis le terminal vous permettra de voir tous les messages d'erreur qui pourraient apparaître au cours du processus. Dans certains cas, vous pourriez même obtenir un avertissement concernant un nom de fichier différent de msftedit.dll ou msls31.dll, que vous devriez acquérir à la place. Tout comme un labyrinthe de dépendances Unix, vous pourriez théoriquement passer du temps à acquérir un répertoire plein de fichiers différents.

Lorsque vous rencontrez le même problème avec Excel ou du code Delphi, naviguez vers le répertoire contenant l'exécutable que vous essayez d'exécuter et placez les deux fichiers de bibliothèque dynamique dans ce répertoire. Vous pouvez donner à Wine un accès total à ceux-ci en les mettant dans ~/.wine/drive_c/Windows/system32 également, mais cela pourrait écraser certains fichiers que Wine installe par défaut.

Puisque ces DLL sont supérieures à certains égards aux solutions open-source utilisées par Wine, elles peuvent également faciliter le lien d'objets dans d'autres programmes que vous pourriez exécuter. Cependant, de nombreux utilisateurs n'aiment pas l'idée de polluer leur installation Linux avec des fichiers propriétaires. Les placer uniquement dans les répertoires utilisés réellement par vos programmes est la meilleure façon de résoudre ce problème. Vous pouvez même créer des répertoires pour des accessoires Windows que vous avez copiés à partir d'une autre partition. Par exemple, certains utilisateurs rencontrent ce genre de problèmes s'ils utilisent un script bash ou du code Delphi pour démarrer des instances traditionnelles de WordPad. Wine pourrait avoir.

Wine a installé sa propre version de write.exe, mais rien ne vous empêche de créer un répertoire dans “~/.wine/drive_c/Program Files/” et d'y placer write.exe, msftedit.dll et msls31.dll, puis de référencer ce répertoire avec votre code. Comme Wine inclut une version primitive de l'interpréteur cmd de Microsoft Windows NT, vous pouvez également référencer ces programmes dans des fichiers de script Batch si vous le souhaitez. Assurez-vous de les précéder de @ECHO OFF, sinon chaque commande apparaîtra comme si vous l'aviez tapée dans une ligne de commande puis exécutée une à une.

De nombreux sites sur Internet proposent des objets DLL à télécharger, et il peut être tentant d'opter pour l'un de ces dépôts si vous n'avez pas d'installation Windows sur une autre partition. Bien qu'ils puissent être extrêmement pratiques, assurez-vous de réaliser une analyse anti-malware sur msftedit.dll et msls31.dll si vous êtes contraint de les acquérir de cette manière. Vous ne devriez pas traiter ces dépôts de la même manière que vous traitez ceux qui sont officiellement sponsorisés par les projets Ubuntu, Debian et Fedora.

N'oubliez pas aussi que si vous devez acquérir ces fichiers de cette manière, cela pourrait poser des problèmes de licence si vous redistribuez votre code. Ne téléchargez pas d'exécutables que ces dépôts pourraient proposer, car ces exécutables sont souvent une forme d'adware conçue pour influencer les utilisateurs des véritables environnements logiciels Microsoft Windows. Il en va de même pour les cas où vous auriez été amené à télécharger plusieurs bibliothèques différentes en dehors de celles-ci, car elles peuvent également être la cible du même type d'invasion adware.

Maintenant que tu as fini de lire Comment corriger l'erreur OLE 8004013F sur Linux, nous t'invitons à explorer davantage la catégorie Linux. Tu y trouveras d'autres articles intéressants qui élargiront tes connaissances et te tiendront informé. Ne cesse pas de lire et de découvrir plus!

Index
  1. Bibliothèques OLE nécessaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Go up