1. 程式人生 > >windows環境將Python指令碼做成系統服務

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 值為你要作為服務執行的程式啟動所需要的引數。   
啟動服務正常執行。