c# 開發windows服務程序。
一個簡單的服務程序示例。
歸納了幾點。有不足之處,請賜教。
一、創建服務程序 1. 菜單欄“文件”--->“新建”--->“項目”,在項目類型中選擇“windows”,模板中--->“windows 服務”。項目名稱任意起。
新項目中會創建 Program.cs , Service1.cs及其他的文件或文件夾
2. 編寫程序 略。
二、添加服務應用程序 1. 在解決方案中,打開要向其中添加安裝組件的服務的Design視圖。(雙擊Service1.cs即可)
2. 在任意位置,單擊右鍵,在屬性窗口中,單擊添加安裝程序 這時項目中就添加了一個新類 ProjectInstaller ;兩個安裝組件 ServiceProcessInstaller 和 ServiceInstaller,並且服務的屬性值被復制到組件。
修改ServiceInstaller 的 StartType 屬性設置為適當的值。
屬性值說明 Manual:服務安裝后,必須手動啟動。 Automatic :每次計算機重新啟動時,服務都會自動啟動。 Disabled: 服務無法啟動。
修改serviceProcessInstaller類的Account屬性改為 LocalSystem。
這樣,不論是以哪個用戶登錄的系統,服務總會啟動。
三、打包程序,創建服務安裝項目
1. 菜單欄“文件”--->“添加”--->“新建項目”
2. 點擊“項目類型”--->“其他項目類型”--->“安裝和部署”,再在“模板”點擊“安裝項目”,
點擊“確定”.這樣在解決方案中會新添加安裝項目
3. 在“文件系統”中點擊“應用程序文件夾”,右邊框變空白,
在右側空白處右擊鼠標,“添加”--->點擊“項目輸出”,出現一個對話框,點擊“確定”
4. (可選)再右擊鼠標,“添加”--->點擊“文件”,選擇文件夾中的“bin”文件中的“Debug”文件中的“.exe”,把“.exe”打開。 5. (可選)單擊“文件系統”中的“用戶的"程序"菜單”,在右邊空白處右擊鼠標,點擊“創建新的快捷方式”,把應用程序文件夾中的“.exe”文件選上,點擊確定。 6. (可選)單擊“文件系統”中的“用戶桌面”,操作如上一步驟。
7. 向安裝項目添加自定義操作 .
右擊安裝項目,指向“視圖”,然后選擇“自定義操作”。
編輯區出現自定義操作編輯器。
在“自定義操作”編輯器中右擊“自定義操作”節點,然后選擇“添加自定義操作”。
出現“選擇項目中的項”對話框。在列表框中雙擊“應用程序文件夾”將其打開,
選擇“主輸出來自 ***Service(活動)”,然后單擊“確定”。
主輸出被添加到自定義操作的所有四個節點,即“安裝”、“提交”、“回滾”和“卸載”。
8. 打包文件
點擊菜單欄中"生成"中的“生成***Setup1(包名)”,等頁面左下角顯示"生成成功"即可 安裝項目目錄\Debug\ 下會生成 .exe 和 .msi 的安裝文件,
注:安裝程序屬性配置 在“解決方案資源管理器”中,點擊***Setup(程序名稱),打開程序的屬性窗口。
在其中可以配置其屬性 1 各個屬性都有說明,根據需要自己修改 2 更改其中的默認安裝路徑?
在“文件系統”的“應用程序文件夾”的屬性窗口
DefaultLocation屬性中 默認:[ProgramFilesFolder][Manufacturer]/[ProductName]
例:修改為D盤的Program Files/的目錄下, 只要將[ProgramFilesFolder]該成D:/Program Files/ 即可。 修改后的路徑為D:/Program Files/[Manufacturer]/[ProductName]