1. 如何把exe的可執行程序設置成系統服務
方法1:修改注冊表
在「開始→運行」中鍵入「regedit.exe」,打開「注冊表編輯器」,展開分支「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services」,在右側窗格中顯示的就是本機安裝的服務項。
如果要新建服務,只須點擊「編輯→新建→項」,然後為此項命名,如「test」;然後右擊該項,選擇「新建→字元串值」或「新建→DWORD值」即可。添加一個服務項目具體需要添加的鍵值如下:
「DisplayName」,字元串值,對應服務名稱;
「Descrīption」,字元串值,對應服務描述;
「ImagePath」,字元串值,對應該服務程序所在的路徑;
「ObjectName」,字元串值,值為「LocalSystem」,表示本地登錄;
「ErrorControl」,DWORD值,值為「1」;
「Start」,DWORD值,值為2表示自動運行,值為3表示手動運行,值為4表示禁止;
「Type」,DWORD值,應用程序對應10,其他對應20。
http://i.cn.yahoo.com/liubo2461457/blog/p_52/
2. 怎麼把自己寫的服務程序添加到計算機服務
下面介紹使用SrvAny.exe將tracd封裝成windows服務。
1.下載安裝Windows2003 Resource Kits,其實我們只需要該目錄下的SrvAny.exe和instsrv.exe文件即可,在此目錄下還有rktools.chm幫助文件,大家可以查看SrvAny.exe如何使用。
2.創建服務,語法如下:instsrv 服務名稱 srvany所在路徑/srvany.exe。假設我們的Windows 2003 Resource Kits都安裝在C:/Program Files/Windows Resource Kits/Tools目錄,待建立的服務名稱是TracSrv,那麼我們的命令如下:
"C:/Program Files/Windows Resource Kits/Tools/instsrv" TracSrv "C:/Program Files/Windows Resource Kits/Tools/srvany.exe"
需要注意的是,srvany前的路徑不能省略,必須是絕對路徑。
現在我們已經創建了一個名叫TracSrv的服務,下一步我們來配置這個服務,讓它封裝tracd命令。
3.打開注冊表編輯器。找到注冊表項 「HKEY_LOCAL_MACHINE/SYSTEM/ CurrentControlSet/Services/TracSrv」,在TracSrv項里建立新的子項「Parameters」,再在新建的 Parameters項里新建字元串值,數值名稱設為「Application」,數值數據設為我們在第一篇說的啟動tracd的行命令,也就是
c:/python24/python c:/python24/scripts/tracd -p 8001 C:/SCM/Angel/Angel_Trac
(注意使用全路徑)。這樣,我們就配置好了TracSrv服務。
4.啟動TracSrv服務。現在我們就可以在瀏覽器中訪問Trac網站,只要伺服器啟動,不需要進入登陸Windows桌面,我們就可以訪問Trac站點了。
如何刪除這個服務呢?使用sc.exe即可,此命令在xp系統自帶。
1.停止TracSrv服務。
2.運行cmd,進入行命令窗口,輸入「sc delete TracSrv",回車即可。
3. 如何將應用程序注冊為系統服務
安裝組件在正在安裝到的系統上注冊一項單個的服務,並使服務控制管理器知道該服務的存在。當使用服務應用程序時,可以在「屬性」窗口選擇一個鏈接,以自動將適當的安裝程序添加到項目中。有關安裝組件以及組件的工作方式的信息,請參見安裝組件介紹。注意服務的屬性值將從服務類復制到安裝程序類。如果更新服務類上的屬性值,這些屬性值在安裝程序中將不會自動更新。當向項目添加安裝程序時,項目中會創建一個新類(默認情況下名為ProjectInstaller),並在其中創建適當的安裝組件的實例。該類作為項目所需的所有安裝組件的中心點。例如,如果向應用程序添加第二項服務並單擊「添加安裝程序」鏈接,這時並不創建第二個安裝程序類,而是將第二項服務所需的其他安裝組件添加到現有類。要正確安裝服務,並不需要在安裝程序中進行任何特殊編碼。但是,如果需要向安裝進程添加特殊功能,則可能偶爾需要修改安裝程序的內容。有關信息,請參見如何:配置安裝組件。在將安裝程序添加到應用程序之後,下一步是創建安裝項目,該項目將安裝已編譯的項目文件並運行安裝服務所需的安裝程序。若要創建完整的安裝項目,您必須將服務項目的輸出添加到該安裝項目,然後添加自定義操作以安裝您的服務。有關安裝項目的信息,請參見安裝項目。有關自定義操作的信息,請參見演練:創建自定義操作。注意顯示的對話框和菜單命令可能會與幫助中的描述不同,具體取決於您現用的設置或版本。若要更改設置,請在「工具」菜單上選擇「導入和導出設置」。有關信息,請參見VisualStudio設置。將安裝程序添加到服務應用程序在「解決方案資源管理器」中,訪問要為其添加安裝組件的服務的「設計」視圖。單擊設計器的背景以選擇服務本身,而不是它的任何內容。設計器具有焦點時,右擊然後單擊「添加安裝程序」。這時項目中就添加了一個新類ProjectInstaller和兩個安裝組件ServiceProcessInstaller和ServiceInstaller,並且服務的屬性值被復制到組件。單擊ServiceInstaller組件,驗證ServiceName屬性的值已為與服務本身的ServiceName屬性的值相同。若要確定如何啟動服務,請單擊ServiceInstaller組件並將StartType屬性設置為適當的值。值結果Manual服務安裝後,必須手動啟動。有關信息,請參見如何:啟動服務。Automatic每次計算機重新啟動時,服務都會自動啟動。Disabled服務無法啟動。若要確定將要運行服務的安全上下文,請單擊ServiceProcessInstaller組件並設置適當的屬性值。有關信息,請參見如何:為服務指定安全上下文。重寫需要為其執行自定義處理的所有方法。有關信息,請參見如何:重寫安裝組件上的默認方法。對項目中的每項附加服務執行步驟1到步驟7。注意對於項目中的每項附加服務,必須將附加的ServiceInstaller組件添加到項目的ProjectInstaller類中。步驟三中添加的ServiceProcessInstaller組件適用於項目中的所有單個服務安裝程序。創建您的安裝項目和自定義操作,部署和安裝您的服務。有關安裝項目的信息,請參見安裝項目。有關自定義操作的信息,請參見演練:創建自定義操作。