mal wieder ich und zu einem Problem, wo google aktuell nicht weiterhelfen kann.
Mein Script, soll laut Befehl in sich selbst per subprocess im Hintergrund Starten.
normal per "python3 ./test.py" läuft es auch aber wenn ich dies in pyinstaller Onefile
umwandle, geht hier auf einmal nichts mehr.
Python Version: 3.10.12 (soll so sein)
pyinstaller Version: 6.19.0
hier mein Beispiel, was ich dafür Vorbereitet habe:
Code: Alles auswählen
#!/usr/bin/env python3
import time, os, sys
import subprocess as sp
if getattr(sys, "frozen", False):
APPLICATION_PATH = os.path.dirname(sys.executable)
elif __file__:
APPLICATION_PATH = os.path.dirname(__file__)
APPLICATION_PATH = os.path.normpath(APPLICATION_PATH)
SCRIPT_NAME = os.path.basename(__file__)
EXE = APPLICATION_PATH + "/" + SCRIPT_NAME
def zahler():
I = 0
for a in range(10):
I += 1
time.sleep(0.25)
def start():
sp.Popen(
[sys.executable, EXE, "nur_ein_test"],
stdout=sp.DEVNULL,
stderr=sp.DEVNULL
)
if len(sys.argv) > 1:
if sys.argv[1] == "--start":
start()
if sys.argv[1] == "nur_ein_test":
zahler()
sys.exit(0)und sich selbst nicht doppelt ausführen kann.
Oder muss da eine weiter Datei mit rein die das Script aufrufen könnte aber es muss mit Impot dann laufen...
Gruß
