So beheben Sie den OLE-Fehler 8004013F unter Linux

Wenn Sie versuchen, eine Datenbank oder ein Makro in einer Wine-basierten Umgebung mit einer GNU / Linux-Implementierung auszuführen, wird möglicherweise eine Fehlermeldung angezeigt. Irgendwann während des Programmablaufs wird möglicherweise eine angezeigt OLE-Fehler 8004013F Box. Ihr Skript wird dann sofort die Ausführung einstellen. In diesem Fall fehlt Ihnen höchstwahrscheinlich eine Bibliothek, die Ihr Skript ausführen muss. In einem nativen Windows-Client werden diese Bibliotheken verwendet, um Objekte in Dateien mit ihrem übergeordneten Host abzugleichen. Linux verfügt nicht über diese Funktion, da jedes Programm, das auf einem X Server ausgeführt wird, die Dinge auf seine eigene Weise verwaltet.

In einer nativen Microsoft Windows-Umgebung kann Delphi ein kleines Stück Code zum Öffnen von Excel verwenden. Wenn Sie möchten, dass eine eingebettete und verknüpfte Instanz von Excel mit verschiedenen Objekten funktioniert, haben Sie möglicherweise verwendet eclApp: = CreateOleObject (‘Excel.Application’); um dies zu tun. In Linux haben Sie möglicherweise sogar versucht, OpenOffice auf diese Weise zu verwenden. Sollten Sie Delphi finden, der die gefürchteten wirft 8004013F Fehler bei Ihnen, nachdem Sie versucht haben, ein OLE-Objekt mit einer Instanz von zu erstellen eclApp: = CreateOleObject (‘com.sun.star.ServiceManager’); Snippet, dann leiden Sie wahrscheinlich unter dem gleichen Abhängigkeitsproblem. Überprüfen Sie zunächst Ihren Code auf Rechtschreibfehler. Dies sind die häufigsten Fehlerursachen, noch bevor Abhängigkeiten auftreten. Sobald Sie sicher sind, dass Sie alles richtig geschrieben haben, können Sie mit der Wiederherstellung der erforderlichen Bibliotheken fortfahren.

Notwendige OLE-Bibliotheken

Möglicherweise tritt der gleiche Fehler auch auf, wenn Sie versucht haben, eine Windows-Organizer-Anwendung namens keynote-nf zu verwenden. Wenn dies der Fall ist, können Sie ihn auf dieselbe Weise beheben. Die Datei keynote.exe wird nicht mit einem Installationsprogramm geliefert, daher ist es üblich, sie in das Verzeichnis “Programme” zu kopieren. Während der Ausführung kann entweder der oben genannte 8004013F-Fehler oder eine andere 80004001-Ausnahme auftreten. Erstellen Sie in beiden Fällen mit dem Befehl mkdir oder Ihrem grafischen Dateimanager ein Verzeichnis in den Programmdateien. Nennen Sie es KeyNote-NF und verschieben Sie die binäre Datei keynote.exe dorthin.

Wenn Sie Zugriff auf eine Windows XP-, Vista-, 7-, 8-, 8.1- oder 10-Partition haben, möchten Sie möglicherweise versuchen, die Datei msftedit.dll von der zu kopieren C: Windows system32 Verzeichnis in das von Ihnen erstellte KeyNote-NF-Verzeichnis. Sie sollten auch die Datei msls31.dll kopieren. Sie können beide auch von einer Installations-CD erwerben, müssen jedoch den Befehl expand verwenden, um sie aufzublasen. Führen Sie in beiden Fällen das Programm aus, und Sie sollten feststellen, dass es einwandfrei funktioniert.

Thunar, Nautilus und andere ähnliche Dateimanager identifizieren keynote.exe als ausführbare DOS-Datei, die Sie ignorieren können. Führen Sie es einfach wie zuvor aus. Wenn Sie mit der rechten Maustaste klicken, um auf ein Kontextmenü zuzugreifen, wird möglicherweise eine Option angezeigt, mit der Sie aufgefordert werden, es unter Wine auszuführen. Wählen Sie diese Option, um sie zu starten. Wenn Sie das Programm stattdessen vom Terminal aus ausführen, können Sie alle Fehlermeldungen anzeigen, die den Kopf in diesem Prozess aufrichten könnten. In einigen Fällen erhalten Sie möglicherweise eine Warnung zu einem anderen Dateinamen als msftedit.dll oder msls31.dll, den Sie stattdessen abrufen sollten. Ähnlich wie bei einem Unix-Abhängigkeits-Kaninchenbau könnten Sie theoretisch einige Zeit damit verbringen, ein Verzeichnis mit verschiedenen Dateien zu erwerben.

Wenn Sie dasselbe Problem mit Excel- oder Delphi-Code haben, navigieren Sie zu dem Verzeichnis, das die ausführbare Datei enthält, die Sie ausführen möchten, und platzieren Sie die beiden dynamisch verknüpften Bibliotheksdateien in diesem Verzeichnis. Sie können Wine vollständigen Zugriff auf diese gewähren, indem Sie sie eingeben ~ / .wine / drive_c / Windows / system32 Dies kann jedoch dazu führen, dass einige der Dateien, die Wine standardmäßig installiert, überschrieben werden.

Da diese DLLs den von Wine verwendeten Open-Source-Lösungen in gewisser Weise überlegen sind, können sie auch dazu beitragen, Objekte in anderen Programmen zu verknüpfen, die Sie möglicherweise ausführen. Viele Benutzer mögen jedoch nicht die Idee, ihre Linux-Installation mit Closed-Source zu verschmutzen Dateien. Wenn Sie sie nur in die Verzeichnisse stellen, die Ihre Programme tatsächlich verwenden, können Sie dieses Problem am besten lösen. Sie können sogar Verzeichnisse für das tatsächliche Windows-Zubehör erstellen, das Sie von einer anderen Partition kopiert haben. Bei einigen Benutzern treten beispielsweise solche Probleme auf, wenn sie ein Bash-Skript oder Delphi-Code verwenden, um herkömmliche WordPad-Instanzen zu starten. Wine hat möglicherweise eine eigene Version von write.exe installiert, aber nichts hindert Sie daran, ein Verzeichnis in zu erstellen “~ / .Wine / drive_c / Programme /” und platzieren Sie write.exe, msftedit.dll und msls31.dll, und verweisen Sie dann mit Ihrem Code auf dieses Verzeichnis. Da Wine eine primitive Version des cmd-Interpreters von Microsoft Windows NT enthält, können Sie diese Programme bei Bedarf auch in Batch-Skriptdateien referenzieren. Stellen Sie sicher, dass Sie @ECHO OFF voranstellen. Andernfalls wird jeder Befehl so angezeigt, als hätten Sie ihn in einer Befehlszeile eingegeben und dann die Eingabetaste gedrückt, um ihn nacheinander auszuführen.

Viele Websites im Internet bieten DLL-Objekte zum Herunterladen an. Wenn Sie keine Windows-Installation auf einer anderen Partition haben, ist es möglicherweise verlockend, eines dieser Repositorys zu verwenden. Obwohl sie in der Tat praktisch sein können, stellen Sie sicher, dass Sie einen Malware-Scan für msftedit.dll und msls31.dll durchführen, wenn Sie gezwungen sind, sie auf diese Weise zu erwerben. Sie sollten diese Repositories nicht genauso behandeln wie die offiziellen, die von den Ubuntu-, Debian- und Fedora-Projekten gesponsert werden.

Denken Sie auch daran, dass wenn Sie gezwungen sind, sie auf diese Weise zu erwerben, dies zu Lizenzproblemen führen kann, wenn Sie Ihren Code weitergeben. Installieren Sie keine ausführbare Datei, nach der ein solches Repository fragt, da diese ausführbaren Dateien häufig eine Form von Adware sind, die Benutzer der tatsächlichen offiziellen Microsoft Windows-Softwareumgebungen beeinflussen soll. Das Gleiche gilt für alle Fälle, in denen Sie möglicherweise eine Reihe verschiedener Bibliotheken außerhalb dieser beiden herunterladen mussten, da diese derselben Art von Adware-Invasion zum Opfer fallen können.

Similar Posts

Leave a Reply

Your email address will not be published.