In Python programmierte .exe Datei schließt sich sofort wieder?

5 Antworten

Dazu wäre erstmal zu klären, wie genau er denn diese Exe in Python programmiert hat.

Python selbst hat nämlich keine derartige Funktionalität, daher wird es wohl irgendeiner dieser "Ich mach dich Exe vong 1 Python her"-Wrappern sein.

Im "besten" Fall werden dabei

  • Das Skript
  • Der Interpreter
  • und sämtliche Abhängigkeiten inkl. der nötigen Standardmodule

in eine Art "brobdingnagisches selbstentpackendes Archiv mit anschließender Ausführungsanweisung" zusammengepackt.

Im "schlechtesten" Fall dagegen ist die Exe nichts weiter als ein s.g. "Stub", der ohne einen bereits vorhandenen Python-Interpreter so sinnvoll wie ein Schlüssel ohne Tür ist.

Dann gibt es noch so einiges dazwischen und die (eher unwahrscheinliche) Möglichkeit, dass er das ganze mittels Cython und einem C-Compiler gemacht hat, aber selbst dann fehlt dir (vermutlich) zumindest ein gewisser Anteil der nötigen Runtime-Bibliotheken.

Mit Python mach ich jetzt nicht so viel, aber seit wann gibt es einen Compiler der aus der Script Datei eine exe macht?

Also ich vermute eher, da wurde dir Schadsoftware untergejubelt

Hat er dir denn den ganzen Ordner geschickt?

Eine Exe Datei funktioniert nicht von alleine. Sie braucht einen Ordner in dem die notwendigen Daten sind. Bei deinem Kumpel ist sie vermutlich in dem Ordner, und bei dir nicht.

(Gibt auch exe-Dateien, die selbst einen Temporären Ordner erstellen wenn man sie ausführt, und diesen dann benutzen. Dauert aber sehr lange zum Starten dann)

Woher ich das weiß:Hobby – Programmieren ist mein Hobby & Beruf
Isendrak  06.07.2020, 20:47

Das gilt aber nur dann, wenn die betreffende Exe überhaupt irgendwelche zusätzlichen Dateien benötigt...

1

Gibt es eine Fehlermeldung, wenn du die Datei über die Kommandozeile ausführst?

Wahrscheinlich fehlen irgendwelche .dlls...

Woher ich das weiß:eigene Erfahrung – Mein Hobby ist PC!
verreisterNutzer  06.07.2020, 20:44

bei ihm funktioniert es wie gesagt einwandfrei

0
Muenze3006co  06.07.2020, 20:48
@verreisterNutzer

Weil er vielleicht die .dll Dateien hat und du nicht... Oder halt andere wichtige Dateien, die zum Start der exe notwendig sind...

0
Muenze3006co  06.07.2020, 20:50
@verreisterNutzer

Ja es kann auch sein, dass du einen anderen Prozessortyp hast als er. Es gibt nämlich nicht eine einheitliche „Sprache“ für alle Prozessorentypen...

0
Isendrak  06.07.2020, 20:59
@Muenze3006co
Es gibt nämlich nicht eine einheitliche „Sprache“ für alle Prozessorentypen...

Ist zwar an sich korrekt, aber da davon auszugehen ist, dass auf beiden Seiten Windows eingesetzt wird und Prozessoren die ausschließlich eine 32 Bit Architektur unterstützen schon seit ca. 10 Jahren oder länger eher eine Seltenheit sind (zumindest für PCs), ist das mit an Sicherheit grenzender Wahrscheinlichkeit nicht das Problem.

0