首頁 > IT > > 正文

              使用srvany.exe將程序安裝成windows服務的詳細教程(附bat程序)

              2021-11-22 18:12:06    來源:腳本之家

              srvany.exe介紹srvany.exe是Microsoft Windows Resource Kits工具集的一個實用的小工具,用于將任何EXE程序作為Windows服務運行。也就是說srvany只是其注冊程序的服務外殼,這個特性對于我們來說非常實用,我們可以通過它讓我們的程序以SYSTEM賬戶啟動,或者實現隨機器啟動而自啟動,也可以隱藏不必要的窗口,比如說控制臺窗口等等。 資源下載你可以通過下載并安裝Microsoft Windows Resource Kits 獲得或者直接在本文下載。   示例中的控制臺程序僅僅是向當前路徑不停的寫入時間。   srvany 打包下載地址 測試程序,測試程序(含控制臺項目)

              軟件名稱:instsrv.exe srvany.exe 打包(可將程序安裝成windows服務)軟件大小:49KB更新時間:2013-09-24立即下載

              如何使用 當你獲取到srvany后并決定將某程序作為服務啟動后,請先將srvany安裝為系統服務,具體的安裝方法有很多,這里使用instsrv,語法如下:

              安裝 instsrv ServiceName C:\Windows\System32\srvany.exe  卸載 instsrv ServiceName remove 或者 sc delete servername

              腳本之家補充:如果服務名中間有空格需要用雙引號例如 sc delete "server name"

              (ServiceName 即你自己定義的服務名稱,可以是要作為系統服務啟動的應用程序的名稱。) 安裝完畢后,我們需要對srvany.exe進行配置,以便于能夠加載我們指定的程序,配置的方法是,開始 - 運行 - regedit,打開注冊表,定位到下面的路徑。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName   如果該服務名下沒有Parameters項目,則對服務名稱項目右擊新建項,名稱為Parameters,然后定位到Parameters項,新建以下幾個字符串值。   名稱 Application 值為你要作為服務運行的程序地址。   名稱 AppDirectory 值為你要作為服務運行的程序所在文件夾路徑。   名稱 AppParameters 值為你要作為服務運行的程序啟動所需要的參數。 比如這里是個配置實例,我們這里配置的服務名稱是MyService,下面是MyService的安裝配置情況: 至此,MyService已經安裝成windows服務了,在Window服務項中即可查看。

              本文當然不會僅僅是照搬文章,最近在學習批處理,將其中的操作使用批處理來完成。

              批處理說明

              1. run-install.bat 封裝了安裝服務的操作(上面有提到)。需要傳入參數有服務名稱,程序名稱。

              @echo offrem 參數依次為 服務名稱 可執行文件名稱@echo 服務名稱:%1@echo 程序名稱:%2rem 定義需要運行的程序路徑set curExe=%~dp0%2rem 定義注冊表路徑set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService\Parameters\rem 定義srvany.exe文件路徑set sourcePath=%~dp0srvany.exerem 進入當前目錄cd /d "%~dp0"rem 安裝引導服務instsrv %1  "%sourcePath%"@echo 服務添加完成rem 添加注冊表語法: reg add 注冊表路徑 /v 項名稱 /t 值類型 /d 數據 /f 表示強行修改不提示rem 名稱 Application 值為你要作為服務運行的程序地址 /d對應的參數有斜杠不是為了轉義引號,而是路徑還有斜杠,默認將引號轉義了,額外添加斜杠是為了保留引號reg add %regpath% /v AppDirectory /t REG_SZ /d "%~dp0\" /frem 名稱 AppDirectory 值為你要作為服務運行的程序所在文件夾路徑reg add %regpath% /v Application /t REG_SZ /d "%curExe%" /f rem 名稱 AppParameters 值為你要作為服務運行的程序啟動所需要的參數reg add %regpath% /v AppParameters /t REG_SZ /f@echo 注冊表添加完成

              2.install.bat 命令含義:進入當前目錄,調用當前目錄下的run-install.bat文件,并傳入參數,完成服務安裝。服務名:MyService 執行程序:Console.exe

              @echo offcd /d %~dp0call run-install.bat  MyService Console.exepause

              3.run-del.bat 簡單封裝了卸載服務的操作,傳入服務名稱即可。

              @echo offrem 參數依次為 服務名稱@echo 服務名稱:%1rem 進入當前目錄cd /d %~dp0rem 卸載引導服務instsrv %1 remove

              4.del.bat 命令含義:進入當前目錄,調用當前目錄下的run-del.bat文件,并傳入參數,完成服務卸載。服務名:MyService

              @echo offcd /d %~dp0call run-del.bat  MyServicepause

              總結

              1.按照以上操作即可輕松將程序添加到系統服務中去。  2.使用場景為,該程序需要開機啟動,而且是在Window未登錄的情況下。(常規的開機啟動應用程序需要輸入機器用戶名、密碼進入到桌面后才啟動)  3.將程序部署成服務后,該程序依然可以雙擊啟動,如果不需要,建議將程序中添加命令行參數判斷來禁止雙擊啟動該程序。  4.在服務的屬性中,可以設置其與桌面進行交互,此時Window會提示交互式消息提示,點擊后即可顯示程序窗體。   5.如果你的程序是做成安裝包,調用安裝服務的批處理和調用卸載服務的批處理,則可以放在安裝程序和卸載程序的時候去執行,簡化用戶操作。

              相關熱詞搜索:

              上一篇:
              下一篇:

              熱點話題

              熱點推薦

              頭條

              ? 亚洲一本到无码av中文字幕| 亚洲色欲一区二区三区在线观看| 亚洲国产精品乱码一区二区| 亚洲色成人WWW永久网站| 亚洲午夜福利精品无码| 亚洲一区无码精品色| 国产精品亚洲视频| 亚洲熟妇av一区二区三区漫画| 亚洲日韩欧洲乱码AV夜夜摸| 亚洲欧洲∨国产一区二区三区| 亚洲精品成人片在线观看精品字幕| 亚洲精品字幕在线观看| 亚洲s色大片在线观看| 亚洲国产天堂在线观看| 亚洲欧洲日产国产综合网| 亚洲网站视频在线观看| 亚洲另类图片另类电影| 国产成人亚洲合集青青草原精品| 亚洲午夜理论片在线观看| 亚洲AV无码一区二区三区电影| 国产精品亚洲一区二区三区 | 相泽亚洲一区中文字幕| 亚洲无人区一区二区三区| 亚洲高清国产拍精品26U| 亚洲a在线视频视频| 亚洲精品一区二区三区四区乱码| 亚洲国产美女视频| 亚洲一卡一卡二新区无人区| 国产精品无码亚洲一区二区三区| 亚洲精品乱码久久久久久不卡| 日韩精品亚洲aⅴ在线影院| 亚洲产国偷V产偷V自拍色戒| 99久久亚洲精品无码毛片| 亚洲va在线va天堂va手机| 亚洲hairy多毛pics大全| 亚洲高清免费视频| 日本亚洲视频在线| 亚洲欧洲日本天天堂在线观看| 亚洲一区二区观看播放| 亚洲国产成人久久精品99| 国产AV无码专区亚洲AVJULIA|