使用 NSSM 將 EXE 包裝成 Windows 服務
NSSM(Non-Sucking Service Manager)是一支免費開源工具,可以把幾乎任何 EXE 包裝成 Windows 服務,讓它開機自動啟動、當掉自動重啟、並把 stdout/stderr 導向日誌檔。 版本現況:NSSM 最後一個正式釋出版是 2014 年的 2.24;預覽版 2.25 在官方 git 上持續有提交,但無正式發布日期。功能已相當完整,只是不要期待活躍的版本更新。 NSSM 與 SC 命令的差異Windows 內建的 sc.exe 可以註冊服務,但它的前提是「被包裝的程式本身已實作 Windows Service API」——也就是說要會回應 SCM 的 Start/Stop/Pause 訊號。一般的 console EXE 沒有這套邏輯,用 sc 直接包會秒停。 NSSM 的做法是自己當服務宿主,在 SCM 和你的 EXE 中間做代理:SCM 叫 NSSM 停,NSSM 再去 terminate 你的 EXE。因此任何 console 程式都能包,不需要改原始碼。 其他 SC 辦不到、NSSM 能辦到的: stdout / stderr 轉...




