Nach der Erstellung python exe-Datei mit cx_freeze die Datei nicht alles tun
Habe ich vor kurzem erstellt verwendet cx_freeze erstellen ein python-3.2.2 exe-Datei. Als ich versuchte, führen Sie die exe-Datei passiert nichts.
Hier ist der code für meine test.py Datei:
print("hello world")
for i in range(5):
print(i)
Hier ist der code für meine testSetup.py Datei:
from cx_Freeze import setup, Executable
exe = Executable(
script="test.py",
base="Win32GUI",
targetName="Test.exe"
)
setup(
name = "Test",
version = "0.1",
description = "I wish programming was this easy",
executables = [exe])
Dem build-Verzeichnis, das cx_freeze gemacht hat, einen Ordner namens exe.win32-3.2 welche die Dateien:
bz2.pyd
library.zip
python32.dll
Test.exe
unicodedata.pyd
- Ich denke, den Klick auf die .exe-Datei muss geöffnet habe, einige Eingabeaufforderung?
- Wenn Sie dies tun, von einem windows-computer, dann p2exe ist viel einfacher
- es dauerte nicht öffnen Sie eine Eingabeaufforderung.
- p2exe funktioniert nicht mit python 3.2.2
- Welche version von cx_Freeze haben Sie? Wenn es weniger als 4.3, starten Sie, indem Sie es aktualisieren.
- Ich habe cx_freeze-version 4.3
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mein Vorschlag:
set
base = None
(probieren Sie es aus: vielleicht ist das alles, was Sie wollen?base = Win32GUI
bedeutet "verstecken" der Konsole - das ist nützlich, wenn Sie bauen eine GUI)In den gleichen Ordner mit Ihren .exe eine batch-Datei (eine text-Datei mit .bat) aufrufen, Ihre .exe:
dieser geht in Ihrem batch-Datei:
Beginnen Sie Ihre app, indem Sie auf die batch-Datei - es hält die Konsole offen, so dass Sie in der Lage sind, reed-die Fehler - /Ausgabe.
base = None
die .exe-Druck begann auf der Konsole.cx_Freeze.freezer.ConfigError: no base named None
Ort ein
input()
unten Ihren code ein, und versuchen Sie es erneut:Sieht aus wie Ihre
.exe
läuft und vorhanden ist vor Sie können nichts sehen, so platzieren Sie eininput()
auf den Boden, um das Skript für Benutzereingaben warten, bevor Sie verschwinden.input()
entfernt.