[英]How can I get my Python script to run from my dotnet core windows service?
[英]How can I run python service script like a running windows service?
我使用Pyinstaller將Python腳本轉換為exe格式。然后我編寫了另一個python代碼來運行該exe,但我不想這樣做。 我要用戶單擊service.exe,程序運行類似於Windows服務。 我的服務代碼只是檢查其是否正在運行的簡單示例。 我的run.exe文件具有管理代碼,這意味着您必須使用“以管理員身份運行”選項來運行它。 但是我也不想這樣。 有什么辦法可以解決這些問題?
我的服務代碼:
import time
from pathlib import Path
import win32serviceutil
class Service(win32serviceutil.ServiceFramework):
_svc_name_ = "Service"
_svc_display_name_ = "Service"
_svc_description_ = "a"
def start(self):
self.isrunning = True
def stop(self):
self.isrunning = False
def main(self):
while self.isrunning:
Path(f'C:\\Users\\lenovo\\Desktop\\1.txt').touch()
time.sleep(5)
def parse_command_line(cls):
win32serviceutil.HandleCommandLine(cls)
if __name__ == '__main__':
Service.parse_command_line(Service)
我的運行服務代碼:
import os
path=os.getcwd()
command='"sc create MyService binpath="'+path+'\\Service.exe" start=auto"'
os.system(command)
創建一個簡單的批處理腳本以啟動python腳本。
例如:
SET PATH=%PATH%;X:\PATH_TO_PYTHON
python yourscript.py
PAUSE
僅當未設置環境變量時才需要“ SET PATH ...”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.