一懶到底——輕松注冊Exe程序為Windows系統服務
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
[p]一步實現停止->刪除->注冊->啟動的功能,包括生成注冊表文件并導入。[/p]
[ul] [li]腳本內容如下:[/li][/ul][p]@echo off [br][br]::設置服務名稱 [br]set service_name=smtpsvr [br][br]::設置服務描述 [br]set service_description=1st smtp server 服務 [br][br]::設置服務程序路徑 [br]set prog_path=d:\\green programs\\fstsmtp\\smtpserver.exe [br][br]::設置服務的啟動方式 auto:自動 demand:手動 disabled:禁用 [br]set strt=auto [br][br]echo easyservice 一鍵服務 [br]echo =========================================================== [br]::pause [br]::======================以下部分勿隨意修改========================== [br]set s32=%windir%\system32 [br]set reg_file=easyservice.reg [br][br]net stop %service_name% 2>nul [br]copy instsrv.exe %s32% [br]copy srvany.exe %s32% [br][br]%s32%\instsrv.exe %service_name% remove 2>nul [br]%s32%\instsrv.exe %service_name% %s32%\srvany.exe >nul [br][br]::設置服務的啟動方式 auto:自動 demand:手動 disabled:禁用 [br]sc config %service_name% start= %strt% [br]sc description %service_name% "%service_description%" [br][br]echo 生成注冊表文件... [br]echo windows registry editor version 5.00 > %reg_file% [br]echo [hkey_local_machine\system\currentcontrolset\services\%service_name%\parameters] >> %reg_file% [br]echo "application"="%prog_path%" >> %reg_file% [br][br]echo 導入注冊表文件... [br]%reg_file% [br][br]net start %service_name% [br]echo ===========================完成============================ [br]pause[/p] [ul] [li]使用方法:[/li][/ul] [p]修改腳本中service_name、service_description、prog_path、strt這4個變量的內容,分別設置為服務名、功能描述、程序路徑、啟動方式,保存后運行腳本,彈出是否導入注冊表,選是,大功告成,已在winxp及win2k下測試通過。[/p] [p]下載:[/p] [p][img]http://cpiz.com/blog/wp-content/plugins/wp-downloadmanager/images/rar.gif[/img] [b][url=http://cpiz.com/blog/?dl_id=9][color=#356aa0]一鍵服務[/color][/url][/b] (32.2 kib, 206 hits)[/p] [p]包括了instsrv.exe、srvany.exe、sc.exe三個程序,是腳本運行的基礎。[/p][p][upload=rar]2010429210916-2.rar[/upload][/p] 手工添加的方法介紹: 要把應用程序添加為服務,你需要兩個小軟件:Instsrv.exe和Srvany.exe。Instsrv.exe可以給系統安裝和刪除服務,Srvany.exe可以讓程序以服務的方式運行。這兩個軟件都包含在Windows NT Resource Kit里. 把這兩個程序保存在一個方便的位置,例如C盤根目錄下。我們舉例來說明,把OE作為一個服務添加進Windows XP Professional操作系統中,并把這個服務命名為“Mail”。在運行中輸入“CMD”,回車,打開命令行窗口,在提示符后面直接輸入:“c:\instsrv.exe Mail c:\srvany.exe”然后回車,其中的“c:\instsrv.exe”和“c:\srvany.exe”表示這兩個程序保存的位置,而Mail則是你想添加的服務名稱。 運行Regedit打開注冊表編輯器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下,找到剛才添加的Mail,點擊右鍵,新建一個鍵,命名為“Parameters”,點擊新建的Parameters,并再次新建一個名稱為“Application”的子鍵,數據類型為“REG_SZ”,數值為希望作為服務運行的程序的所在位置,如果你的Windows系統安裝在C盤下,那么OE的程序位置就是C:\Program Files\Outlook Express\msimn.exe ,把這個路徑添入數值中。到現在,這個服務已經成功的添加并且設置好了。如果你希望做的更加專業,可以在Mail服務下建立一個名為Description的子鍵,數據類型同樣為REG_SZ,數值可以寫一些你對這個服務的描述,這個我們在后面可以看到。 接下來需要對服務做一些額外的設置,在運行中輸入“Services.msc”并回車,在列表中找到我們剛添加的Mail服務,雙擊打開,來做詳細的設置。在“General”選項卡上,我們需要設置這個服務的運行方式,在圖二中可以看見,作為一個服務,有“自動(Automatic)”,“手動(Manual)”和“禁止(Disabled)”三種啟動類型,按照需要,我們一般設置成自動就可以了。而在“Logon”選項卡下可以設置以什么身份運行這個服務,一般可以不用理會,按照默認的設置。“Recovery”選項卡下則是進行恢復設置的,你可以指定,在服務第一次,第二次和第三次出錯之后分別采取什么措施。“Dependencies”則顯示了服務之間的依存關系,可以讓你察看這個服務的運行依賴哪些其它服務,以及還有什么服務依賴于這個服務。這后面幾個對我們一般用戶沒有什么意義。經過這些設置,你的服務已經完全可以正常工作了。 注銷一下看看。為了讓你看清除,我們先打開OE,這時在任務管理器里,有兩個msimn進程,用戶名為“.com.cn”的是我們打開的OE,而用戶名為“SYSTEM”的就是我們添加的服務 如果你玩夠了,不想再運行這個服務,可以直接禁止它在啟動的時候運行,或者使用Instsrv.exe程序刪除。方法是在命令行下輸入“c:\instsrv.exe Mail remove”,然后回車就可以了。需要注意的是Instsrv.exe這個程序也可以刪除某些系統服務,所以使用的時候一定要小心,對于系統服務,安全起見千萬不要刪除,哪怕你覺得它對你沒有用。 如何將應用程序注冊為系統服務默認分類 2009-09-24 21:47:03 閱讀63 評論0 字號:大中小 . 轉至:----下一站在哪 如何將應用程序注冊為系統服務 我的電腦壞了 2007-10-24 15:46 閱讀18 評論0 字號: 大大 中中 小小 一、應用程序具有服務功能(能響應服務控制臺的查詢請求) 第一種方法:使用instsrv.exe(windows 2003資源工具包帶有),指令格式:instsrv 服務顯示名 應用程序路徑 第二種方法:在注冊表中手工添加,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\下新建一個項,項名為欲顯示的服務名(也可以為任意字符,僅供識別),在這個項下新建如下鍵值: "DisplayName"=(字符串值)服務顯示名 "Description"=(字符串值)服務描述 "ImagePath"=(可擴充字符串值)應用程序路徑 "ObjectName"=(字符串值)"LocalSystem" "Type"=(dword值)10(16進制) "Start"=(dword值)2(16進制) "ErrorControl"=(dword值)1(16進制) 二、應用程序不具有服務功能(不能響應服務控制臺的查詢請求) 大多數應用程序都不具有服務功能,這樣按照上述方法加進去的應用程序在服務剛啟動時能夠啟動,但一當服務控制臺無法接收到應用程序的反饋信息,便會終止程序,因此要使用srvany.exe(同樣,在win2003資源工具包中) 1、instsrv.exe 服務顯示名 srvany.exe 2、在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\下,找到剛添加的服務名,在其下新建項Parameters,再在其下新建字符串值,名Application,值為應用程序路徑。 3、在服務中,找到剛添加的服務,在屬性-登錄中,勾選“允許服務與桌面交互”。 該文章在 2010/4/29 21:31:22 編輯過 |
關鍵字查詢
相關文章
正在查詢... |