MemoryLoadError, wenn Sie versuchen zu laufen py2exe Anwendung
Ich bin versucht, zu bündeln, eine Python-Anwendung, die mithilfe von py2exe 0.6.9 und Python 2.6.4 unter Windows. Während das Programm läuft Prima auf dem system, die ich verwendet, um es zu bauen, es scheitert, wenn ich versuche, führen Sie es auf einem anderen system:
C:\Documents and Settings\Administrator\Desktop\dist>.\backend.exe install
Traceback (most recent call last):
File "boot_service.py", line 6, in <module>
File "zipextimporter.pyo", line 82, in load_module
File "win32serviceutil.pyo", line 9, in <module>
File "zipextimporter.pyo", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading win32api.pyd
Ich habe ein starkes Gefühl, dass ich bin fehlt eine Bibliothek, aber ich bin mir nicht sicher, welche besonders seit dem dependency checker ist nicht schlappmachen so etwas fehlt auf dem Zielsystem. Wie soll ich Vorgehen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
gleiche Frage wie https://stackoverflow.com/questions/1979486/py2exe-win32api-pyc-importerror-dll-load-failed.
anschauen setup.py nur schließt diese dlls, die in das system einbezogen.
wird es helfen Sie!
Können Sie die dll und die Abhängigkeit manuell zu überprüfen. Beim erzeugen der exe-ich bin sicher, Sie haben bemerkt, dass es druckt die dll, die erforderlich sind/verwendet. Check auf dem system, wo die exe-Datei nicht funktioniert, wenn die dll vorhanden ist-und wenn Sie die gleiche version.
Eine andere Sache. Sind Sie kopieren das ganze dist Ordner auf dem system oder nur die exe, denn Sie müssen den ganzen dist-Ordner und nicht nur die exe-Datei.
Machst du den py2exe-Konvertierung einer 64-bit/vista?
Ich Schreibe meinen code auf ein vista64bit und die .exe-Dateien, die ich erstelle funktionieren meist nicht auf 32-bit-XP (das sind die beiden Maschinen, die ich auf der hand habe).
Den .exe hilfsbereit, wirft eine text-Datei mit dem traceback, und es scheint, dass die 64-bit-windows verwendet das win32api.dll. Ich nehme an, dies ist ein .dll verwendet, die von 64-bit-windows zu replizieren 32bit OS Verhalten, so dass ich Sie einfach nehmen Sie das script und führen Sie die Konvertierung auf 32bit XP. Hoffe, das hilft.
Nur für alle, die kommen, um hier in der Zukunft. Wenn Sie jede Art von win32-Bibliothek und u stecken, die mit dieser Art von Fehler, die Sie tun können, die folgenden Schritte:
Beispiel:
Gemäß dem folgenden code:
Benutzte ich die CryptUnprotectData-Funktion, so suchte ich für die CryptUnprotectData erforderliche dll und ich folgende info gefunden geben Sie den link-Beschreibung hier , Wie u sehen können,
"Crypt32.dll" erforderlich ist.
so, ich Editiere meinen setup.py sein Aussehen, die
und es funktionierte perfekt.