將exe應用封裝成windows服務


最近在使用windows應用程序計划來設置應用開機啟動運行,但是不知為什么老是運行一段時間莫名其妙的退出,很是不爽,后面想想可以將應用做成 “服務” 這樣應該就穩定多了,那怎樣將exe的應用程序簡單快速的做成windows服務呢,同事推薦了一個工具,用起來就是很方便,來寫個博客記錄一下

介紹一下NSSM是個什么東西吧

NSSM 是一個服務封裝程序,它可以將普通 exe 程序或 Nodejs 項目封裝成服務,像 windows 服務一樣運行。同類型的工具還有微軟自己的 srvany,不過 nssm 更加簡單易用,並且功能強大。它的特點如下:

支持普通 exe 程序(控制台程序或者帶界面的 Windows 程序都可以)
安裝簡單,修改方便
可以重定向輸出(並且支持 Rotation)
可以自動守護封裝了的服務,程序掛掉了后可以自動重啟
可以自定義環境變量

官網地址及使用方式:

NSSM

安裝服務cmd命令:

nssm install <servicename>

ServiceName為要創建的windows服務的名稱,運行后打開配置界面:

填寫參數后點擊 Install Service 按鈕即可完成。

圖形界面操作很簡單,基本看了就會,下面主要介紹命令行用法

    1. 安裝服務
      nssm install <servicename> <app> [<args>...]

      示例:

       
      1. nssm install celery-demo-worker "c:\Program Files\Python35\Scripts\celery.exe"
      2. nssm set celery-demo-worker AppDirectory d:\celery-demo
      3. nssm set celery-demo-worker AppParameters -A run worker --loglevel=debug -c 1
    2. 啟動服務
      nssm start <servicename>

    3. 停止服務
      nssm stop <servicename>

    4. 重啟服務
      nssm restart <servicename>

    5. 查看服務狀態
      nssm status <servicename>

    6. 手動輪轉日志文件
      nssm rotate <servicename>

    7. 刪除服務
      nssm remove <servicename> [confirm]

      加confirm后不會彈確認窗口

    8. 獲取某項配置信息
      nssm get <servicename> <parameter> [subparameter]

    9. 單獨設置某項配置
      nssm set <servicename> <parameter> [subparameter] value

    10. 重置某項配置
      nssm reset <servicename> <parameter> [subparameter]

    11. 暫停/繼續服務
      nssm pause <servicename>
      nssm continue <servicename>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM