py2exe: Kompilierte Python-Windows-Anwendung nicht ausgeführt werden, weil der DLL
Ich gestehe, ich bin sehr neu in Python und ich weiß wirklich nicht, was mache ich noch. Vor kurzem habe ich eine kleine Windows-Anwendung mit Python 2.6.2 und wxPython 2.8. Und es funktioniert Super, ich bin sehr zufrieden mit, wie gut es funktioniert in der Regel. Von der Regel, ich meine, wenn ich es aufrufen, direkt über den Python-interpreter, so wie hier:
> python myapp.py
Jedoch wollte ich einen Schritt weiter gehen und tatsächlich kompilieren diese in eine eigenständige ausführbare Datei. Also folgte ich diese Anweisungen von der wxPython-wiki das nutzen von py2exe. Auf den ersten, es gab mir einen Fehler in der Befehlszeile den Befehl sagen MSVCR90.dll fehlte. Dann habe ich kopiert MSVCR90.dll zu meinem Python\DLLs Ordner. Das sah zuerst aus wie es behoben werden, da es erfolgreich getan hat, was er tun musste. Er beendete mit einem schnellen Warnung, dass es einige DLL-Dateien, die das Programm hängt sich auf und ich kann oder kann nicht brauchen, um Sie zu verbreiten.
So, ich navigierte in den dist Ordner, die von py2exe erstellt hatte und ausprobiert, läuft meine ausführbare Datei. Aber versuchen, öffnen Sie es nur tauchte ein Fehler-dialog, der sagte:
This application failed to start because MSVCR90.dll was not found.
Re-installing the application may fix this problem.
Also ging ich weiter und kopiert MSVCR90.dll wieder in der dist-Ordner. Aber das hat nicht den trick tun. Dann kopierte ich es in den WINDOWS\system32-Verzeichnis. Dass es nicht entweder. Was muss ich tun, um dieses Ding zu arbeiten?
- Dies ist ein Duplikat der anderen Frage mit einer vollständigen Diskussion:<br/> <stackoverflow.com/questions/323424> Eines Tages StackOverflow könnte mir genug Vertrauen, genug, um Flagge dieses als Duplikat.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht einfach kopieren msvcr*.dll - Sie müssen eingerichtet werden, die Regeln für die Seite-an-Seite-Assemblys. Sie können dies tun, durch die Installation des redistributable package als Sam-Punkte aus oder setzen Sie Sie neben Ihre ausführbaren Dateien, solange Sie gehorchen den Regeln.
Finden Sie im Abschnitt "Bereitstellen von Visual C++ - Bibliothek, DLLs als private assemblies" hier: Wie man mit XCopy-Bereitstellung für details, aber im Grunde ist Ihre Anwendung sieht wie folgt aus:
Einen Vorteil davon ist, dass nicht-admin-Benutzer Ihre app nutzen können (ich glaube, Sie brauchen, um einen admin zu installieren, die Laufzeit über den verteilbaren installer). Und es gibt keine Notwendigkeit für irgendwelche installer - Sie können nur kopieren Sie die Dateien auf einem PC und es funktioniert alles.
Ich glaube Installation Microsoft C++ Redistributable Package wird, installieren Sie die DLL, die Sie brauchen, korrekt.