以下是一個簡單的範例教學,可以讓你快速體驗如何使用 Visual Studio 2005 撰寫一個 Windows Service 應用程式。

實作步驟

  1. File > New,在 Templates 面版中選擇「Windows Service」。

  2. 切到 Service1.cs 的 Design View,然後在設計畫面的空白處點右鍵,選「Add Installer」。

  3. 設定 serviceProcessInstaller1 的相關屬性,例如:Account,這個屬性是用來指定要執行這個 Windows 服務的使用者帳戶。你可以設定成 LocalSystem,以便使用系統帳戶來執行服務。

  4. 設定 serviceInstaller1 的相關屬性,例如:StartType、ServiceName、DisplayName。StartType 是服務的啟動類型,預設是 Manual,即手動啟動,如果你希望服務會在電腦開機之後就自動啟動,可以設定成 Automatic。

  5. 建置專案。

安裝建立好的 Windows Service

你可以使用 .NET Framework 附的 InstallUtil.exe 命令列工具來安裝 Windows 服務:

  1. 安裝開始 > 程式集 > Microsoft .NET Framework SDK v2.0 > SDK Command Prompt

  2. 輸入命令: InstallUtil.exe WindowsService1.exe

註:InstallUtil.exe 可以接受多個參數,讓你一次安裝多個 Windows 服務。不過如果其中一個服務安裝失敗,其他的服務都不會安裝(MCAD 認證考試有考過這個觀念喔!)。

關於除錯

  • 一般來說,你不能除錯 OnStartup 事件,因為 VS 必須 Attach 一個已經啟動的服務。即使用其它方法來除錯  OnStartup 事件,你也只有 30 秒的時間,因為 Windows 服務的啟動時間為 30 秒,超過這個時間就視為該服務啟動失敗。

  • 建議把所有服務的工作都寫在一個單獨的類別,然後在開發時期用一個 Console 或 Windows Forms 專案來對該類別進行開發跟除錯。等到開發完畢,再將此類別加入 Windows Service 專案中。