Seite 1 von 1

py to exe

Verfasst: Freitag 29. Mai 2020, 14:45
von Gerhardus
Hallo,
ich habe ein pythonprog mit Tkinter unter IDLE geschrieben, mir diversen mdb aufrufen, was fehlerlos läuft.
Jetzt wollte ich eine exe datei erstellen um es unter WIN10(64) verwenden zu können.
Cx_freze und pyinstaller, bzw auto-py-to-exe probiert leider erfolglos. Exe Dateien werden erstellt und beim Aufruf verabschieden sie sich sofort nach öffnen des cmd Fensters.
Bei Tests mit unk0omplizierten Miniprogs funktionierten sie. Habe Python 3.8 und überlege auf 3.x
downzugraden glaube aber selber nicht dass das die alleinige Fehlerquelle ist, sondern win10 schuld ist. Habe bemerkt das ich python 3.8.1 32 bit installiert habe. Spielt das eine Rolle?
So wie es jetzt ausschaut kann ich mein Programm nur unter Idle ausführen.
Kann mir jemand einen Rat geben? (py2exe probieren?)
Danke im Voraus
Gerhardus

Re: py to exe

Verfasst: Freitag 29. Mai 2020, 15:20
von Sirius3
Was ist denn die Fehlermeldung? Starte die exe mal in der Eingabeaufforderung (cmd-Fenster), damit sie sichtbar bleibt.

Re: py to exe

Verfasst: Freitag 29. Mai 2020, 15:54
von nezzcarth
Gerhardus hat geschrieben: Freitag 29. Mai 2020, 14:45 Jetzt wollte ich eine exe datei erstellen um es unter WIN10(64) verwenden zu können.
Ein Python-Programm muss keine exe sein, nur um unter Windows verwendet werden zu können (auch wenn sich diese Vorstellung irgendwie hartnäckig zu halten scheint). Diese Programme, die aus Python Code exe/PE Files bauen, erstellen Bundles aus dem Interpreter und dem Code, und sind als Erleichterung zu sehen.

Re: py to exe

Verfasst: Freitag 29. Mai 2020, 21:40
von Gerhardus
Unter der Koimmando zeile kann ich nur python programme ohne GUI aufrufen.

ich weiss nicht ob ich bei cx_freeze setup.py alle im Programm angeführten importe hie nochmals angeben muss.
bei mir aktuell (os,sys,pypyodbc, datetime, time ,tkinter, pandas, numpy).
in meiner setup setup steht unten angeführtes Statement, mit dem ich leider nicht viel anfangen kann.

# GUI applications require a different base on Windows (the default is for a
# console application).

Es kommen keine Fehlermeldungen da die exe abbricht. Bei einigen kam folgende pop up nach Aufruf.

Traceback......
......moduleNotFoundError: No Module named 'kt_xxx' (wobei das der programmname war).
Danke für eure Antworten

Re: py to exe

Verfasst: Samstag 30. Mai 2020, 10:01
von Sirius3
Warum solltest du nur Programm ohne GUI aufrufen können? Die ganze Fehlermeldung wäre schon wichtig.

Re: py to exe

Verfasst: Samstag 30. Mai 2020, 12:15
von Gerhardus
Danke Sirius,

Deine Frage hat mich auf einen trivialen Fehler aufmerksam gemacht. Im Laufe der Programmentwicklung hat sich mainloop()
irgendwann in den Testläufen verabschiedet, was aber im Idle nichts ausmacht. Deshalb keine GUI im cmd Fenster. Sicher zum Schmunzeln.

Zu cx_freeze das prinzipiell funktioniert, aber ab einer programmversion eben nicht mehr. Bei der letzten Version version kommt die gestern
beschriebene Fehlermeldung bei einer Version nach der funktionierenden hatte ich im cmd Fenster diese Meldung:

copying C:\Python38\lib\site-packages\cx_Freeze\bases\Win32GUI.exe -> build\exe.win32-3.8\KT_Tour_tk_v0.65.exe
error: [WinError 5] Zugriff verweigert: 'build\\exe.win32-3.8\\python38.dll'

Ich bin einen Schritt weiter, da ich nun weiß, das cx_freeze funktioniert, muss aber herausfinden bei welchen Erweiterungen
die Ursache der Fehler sind.

Danke

Re: py to exe

Verfasst: Samstag 30. Mai 2020, 18:50
von Gerhardus
Alles erledigt. Funktioniert jetzt auch die letzte Version als exe. Habe einfach dem Programm einfachere Namen gegeben, ohne 'v0.6' im filenamen, das dürfte die Fehler verursacht haben.
Danke