Starten Sie python .py als Dienst unter windows
Habe ich einen windows-Dienst zu starten .py-Skript.
sc create "Maraschino" binPath= "C:\HTPC\Maraschino\maraschino-cherrypy.py" DisplayName= "Maraschino" depend= "Tcpip"
Dann habe ich Hinzugefügt einen registry-Schlüssel zu verknüpfen .py öffnen mit python.exe
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Maraschino\Parameters]
"AppDirectory"="C:\\Python27"
"Application"="C:\\Python27\\python.exe C:\\HTPC\\Maraschino\\maraschino-cherrypy.py"
Jedoch, wenn ich versuche den Dienst zu starten, bekomme ich Fehler 193 0xc1, die beim googeln ergab, dass es nicht eine gültige exe-Datei, die ich versuche zu starten. Ich weiß, Ihr nicht einen .exe, sondern eine .py und verknüpfen es mit öffnen mit python.exe sollte dieses Problem beheben, aber ich bin einen Fehler zu machen. Hat jemand einen Einblick in das, was ich vielleicht falsch gemacht, wenn die Verknüpfung der Skripts das zu verwenden ist python.exe
Dank
- versuchen Sie den Aufruf der .pyc-Datei statt.
- Danke, aber das funktioniert nicht. Seine eine app, also alles zusammengestellt und es laufen maraschino-cherrypy.py funktioniert bei Doppelklick einfach nicht über die Dienste
- Alle diese Duplikate sind: stackoverflow.com/search?q=python+windows+service
- möglich, Duplikat der Kann ich ein Python-Skript als Dienst (in Windows)? Wie?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie dies tun, indem Sie die srvany.exe, das ist ein tool von Microsoft speziell für diese Art von Aufgaben.
Den ersten, downloaden und installieren Sie die Windows Ressource-Kit.
Hinweis: Sie brauchen nur srvany.exe funktioniert auf allen Windows-Versionen.
Davon ausgegangen, dass der Windows Resource Kit installiert wurde C:\Program Files\Windows Resource Kits\ run:
Nun regedit.
In der Registry-Editor-dialog wählen Sie
HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > [YourService]
Mit [YourService] ausgewählt ist, drücken Sie Bearbeiten > Neue > - Taste aus der Symbolleiste.
Typ Parameter und drücken Sie die EINGABETASTE.
Aus der Symbolleiste wählen Sie Bearbeiten > Neue > String Wert.
Typ Anwendung und drücken Sie die EINGABETASTE.
Rechten Maustaste auf Anwendung und wählen Sie Ändern.
Drücken Sie die Taste OK.
Und boom! Sie haben einen schönen neuen service.
Ich weiß nicht, wie sc funktioniert, aber ich denke, das muss ein Weg sein, um Parameter für die Binär -, so könnten Sie versuchen, zu registrieren "C:\Python27\python.exe C:\HTPC\Maraschino\maraschino-cherrypy.py" stattdessen.
Könnte man auch versuchen,py2exe 🙂
Updates von @Ohad. Zunächst srvany.exe eingesetzt werden, um alle Maschinen
Schritt 1:
Dann öffnen Sie die Eingabeaufforderung ein und drücken Sie
sc create "[YourService]" binPath="C:\Program Files (x86)\Windows Resource Kits\Tools\srvany.exe" start=auto ""DisplayName" ="[YourService Monitor]"
[SC] "CreateService" ERFOLG
Schritt 2: erstellen Sie eine Datei.reg mit folgenden Inhalt und doppelklicken Sie auf es
Schritt 3: starten Sie nun den service und es wird ausgeführt, was auch immer Sie zugeordnet haben, in die Datei.reg
Getan