[Windows服務概述]
服務與應用的區別
需要附加到進程方可調試
需要建立安裝
錯誤資訊使用事件記錄紀錄
使用自己的使用者權限
..................
服務的生命週期
安裝
開始、運行、暫停、停止
服務類型
單個類型(Win32OwnProcess)
共用類型(Win32ShareProcess)
[建立Windows服務]
建立"Windows Service"工程
設定"ServiceName"屬性
該屬性必須和安裝類中的相匹配
設定以下屬性
CanStop
該服務是否可以停止
CanShutDown
該服務是否接受關機訊息,並是否觸發OnShutDown事件
CanPauseAndContinue
該服務是否可以停止和運行
CanHandlePowerEvent
該服務是否可以控制電源事件
AutoLog
該服務是否自動紀錄資訊到應用程式事件記錄檔中
自訂代碼
重載OnStart、OnStop及其他方法
為服務添加安裝程式且編譯該工程
安裝建立及編譯好的Windows服務
[為Windows服務添加安裝程式]
添加安裝程式
Windows服務上右鍵,選擇添加安裝程式
設定ServiceInstaller屬性
ServiceName屬性與Windows服務中設定的名稱相符
設定啟動類型:Manual, Automatic, Disabled
設定ServiceProcessInstaller屬性
為服務設定安全上下文
重載其相關方法
如需添加其他服務,重複以上步驟
實際多添加的是"ServiceInstaller"
所有的服務共用一個"ServiceProcessInstaller"
[部署和卸載Windows服務]
命令列方式
部署:InstallUtil myProject.exe
卸載:InstallUtil /u myProject.exe
InstallUtil工具目錄:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
安裝方式
解決方案上點擊右鍵、新工程
Setup and Deployment Projects
Setup Project
在新產生的工程上點擊右鍵、項目輸出、Primary Output、確定
MSDN
Windows Service Applications