Python Datei mit mehreren Dateien in einer .exe?

2 Antworten

Nimm zB cx_Freeze allerdings wird dir dabei ein Ordner mit einer EXE-Datei und allen möglichen weiteren Dateien erstellt.

Py2EXE konnte das läuft aber nicht rund mit aktuellen Python-Versionen.

Du kannst noch Nuitka ausprobieren da gibt es (soweit ich mich erinnere) eine Option alles in eine EXE zu packen.

PS.: Weitere Dateien die einzubinden sind musst du entsprechend in den Configurations-Scripten der Compiler angeben! Das darf man nicht vergessen!

Woher ich das weiß:Berufserfahrung – Softwareentwickler f. Web, Win. & Linux (seit 2001)

Hier ein Tip von mir:

Installiere zuerst mal unter Python das pyinstaller-Modul mit pip oder pip3. Dann erstellt man unter Windows einen Ordner mit dem Namen Python-Projekte. Dort das geschriebene Python-Programm abspeichern. Dann startet man die Windows Powershell und geht damit in den Ordner Python-Projekte. Dort gibt man dann folgendes ein:

  • pyinstaller programmname.py

Das erstellt im Ordner Python-Projekte 3 weitere Unterordner: Einmal build, dist und _pycache_. Die Ordner build und _pycache_ können danach gelöscht werden. Im Ordner dist befindet sich ein weiterer Unterordner mit dem Namen programmname. Dort drin befindet sich die programmname.exe, die PNG-Bildateien und weitere Dateien die zur Python Laufzeitumgebung gehören. Ausserdem 2 weitere Unterordner mit Laufzeitdateien. Das ganze ist dann zusammen selbstständig ohne Python ausführbar. Möchte man in der programmname.exe das Symbol ändern, kann man das Freeware-Tool Resource Hacker http://www.angusj.com/resourcehacker/ nehmen. Damit kann man EXE-Dateien direkt modifizieren. Auch das integrierte Symbol kann man durch ein anderes ersetzen.

Als letzten Schliff hat man noch die Möglichkeit das ganze mit Inno Setup http://www.jrsoftware.org/download.php/is.exe in eine setup.exe zu verpacken. Man muss nur den Ordnerinhalt programmname und die Unterordner in sein Inno Setup Projekt hinzufügen. Wenn abgeschlossen wird das alles in eine setup.exe verpackt. Wenn man dann die setup.exe ausführt wird es normal installiert und ein Startmenü-Eintrag bei Windows erstellt. Ausserdem ein Deinstallationseintrag bei der Systemsteuerung.