windows環境將Python指令碼做成系統服務
在windows環境下將python指令碼做成服務需要用到 srvany.exe 和 instsrv.exe 兩個應用。
srvany.exe 和 instsrv.exe 下載連結:
連結:https://pan.baidu.com/s/1dEBVT7r 密碼:5g6w
假設指令碼的名稱:writeData.py
首先,測試Python指令碼是否可以正常執行。
如果可以正常執行,建立一個bat檔案,writeData.bat,編輯改檔案,python writeData.py,並儲存。
以管理員身份執行bat檔案,是否報錯。
將srvany.exe 和 instsrv.exe 拷貝到任意目錄下,如:D:\Data下面。
在該目錄下執行控制檯指令:
instsrv ServiceName D:\Data\srvany.exe
ServiceName即你自己定義的服務名稱,可以是要作為系統服務啟動的應用程式的名稱。
即 instsrv writeData D:\Data\srvany.exe
會提示服務新增成功。
然後配置一些資訊。
開啟命令列,輸入regedit。
開啟登錄檔,定位到下面的路徑。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName
即HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\writeData
如果該服務名下沒有Parameters專案,則對服務名稱專案右擊新建項,名稱為Parameters,然後定位到Parameters項,新建以下幾個字串值。
名稱 AppDirectory 值為你要作為服務執行的程式所在資料夾路徑。
即:...\Data
名稱 Application 值為你要作為服務執行的程式地址。
即:...\Data\writeData.bat
名稱 AppParameters 值為你要作為服務執行的程式啟動所需要的引數。
啟動服務正常執行。