Scriptstart mit pythonw funktioniert nicht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
HeinKurz
User
Beiträge: 12
Registriert: Montag 20. März 2023, 22:09

Ich habe ein eigenartiges Phänomen mit einer .BAT-Datei für den Start eines Python Scripts.
Man beachte das nicht vorhandene bzw. vorhandene Leerzeichen im Usernamen. Und natürlich gibt es beide User, allerdings auf unterschiedlichen Rechnern.

Das funktioniert:
start c:\Users\HeinKurz\AppData\Local\Programs\Thonny\pythonw c:\Daten\Python\ZA\ZA.py

Das funktioniert NICHT:
start "c:\Users\Hein Kurz\AppData\Local\Programs\Thonny\pythonw" c:\Daten\Python\ZA\ZA.py
Hier fragt Windows, mit welchem Programm ich ZA.py öffnen will. Wenn ich aber python oder pythonw eingebe, passiert gar nichts.
Ohne start funktioniert es aber dann bleibt das Eingabeaufforderungsfenster am Bildschirm und genau das will ich nicht.

Hat jemand eine Idee?
Sirius3
User
Beiträge: 17822
Registriert: Sonntag 21. Oktober 2012, 17:20

Das Problem ist, dass Deine BAT-Datei ein Eingabeaufforderungsfenster öffnet; wenn Du das nicht willst, warum benutzt Du dann eine BAT-Datei?
`start` ist dazu da, Dateien zu öffnen, die mit einem Standardprogramm verknüpft sind; wenn Du also ein pythonw-Programm ausführen möchtest, dann entweder durch Doppelklick auf eine .pyw-Datei oder falls es doch unbedingt ein aufploppendes Eingabeaufforderungsfenster sein soll, per

Code: Alles auswählen

start c:\Daten\Python\ZA\ZA.pyw
HeinKurz
User
Beiträge: 12
Registriert: Montag 20. März 2023, 22:09

Also nur umbenennen von ZA.py auf ZA.pyw hat für die .BAT-Datei rein gar nichts gebracht.
Ich hab die Umbenennung aber nun trotzdem gemacht, dann alle .pyw Files zum Start mit pythonw.exe registriert und starte das Programm nun durch direkten Aufruf von ZY.pyw ohne .BAT-Datei.
Danke Sirius3 für den Tipp.
Antworten