【Windows】使用nssm 將批次檔案註冊服務Service

如何將批次檔、CMD檔 註冊成服務,開機時自動運行這些腳本?

本篇以自動軟撥連網(開機自動撥號上網)為例,撥接指令可參考此篇最底下







首先用 choco install nssm 安裝(推薦)
或者下載nssm,下載下來後看路徑放在哪裡(可以將nssm放C槽底下,加入電腦的PATH)


nssm操作基本上與sc指令雷同,都是管理Windows運行服務的

nssm install MyService
會跳出一個GUI視窗



PathC:\Windows\System32\cmd.exe(電腦CMD.exe的位置)
Startup directoryC:\Users\User\...(所要執行的腳本的位置)
Arguments/c xxx.cmd(使用/c參數表示執行完後結束,後面接著腳本名稱)





可以設定服務相依性
在此撥接範例,我加入了RasMan TapiSrv Netman的服務相依





如果是執行批次檔(執行一次便結束)的話
要到 Exit actions 選擇 Restart 選項為 No action
否則會出現 "Windows無法啟動本機的MyService服務,服務並未回傳錯誤,可能是一個Windows內部錯誤或服務內部錯誤" 錯誤訊息







這樣一來便成功將批次檔(.cmd檔案) 註冊進服務囉









如果後續要修改此服務的話

輸入 nssm edit MyService

就會跳出該GUI窗口出來





若要移除服務

則輸入 nssm remove MyService







沒有留言:

張貼留言