HOW TO:建立 Windows 服務
更新:2007 年 11 月
當您建立服務時,可以使用一個稱為 [Windows 服務] 的 Visual Studio 專案範本。這個範本會參考適當的類別和命名空間 (Namespace)、設定服務基底類別的繼承以及覆寫您可能會希望覆寫的數個方法,自動為您執行許多工作。
注意事項: |
---|
在 Visual Studio 的標準版中,不能使用 [Windows 服務] 範本和相關的功能。 |
若要建立可運作的服務,您至少必須:
設定 ServiceName 屬性。
為您的服務應用程式建立必要的安裝程式。
當您將安裝程式加入應用程式之後,下一步就是建立能夠安裝已編譯之專案檔案的安裝專案,並執行安裝服務所需的安裝程式。若要建立完整的安裝專案,您必須將服務專案的輸出加入至安裝專案,然後加入可安裝服務的自訂動作。如需安裝專案的詳細資訊,請參閱安裝專案。如需自訂動作的詳細資訊,請參閱逐步解說:建立自訂動作。
若要建立 Windows 服務應用程式
建立 [Windows 服務] 專案。
注意事項: 如需在不使用範本的情況下撰寫服務的詳細資訊,請參閱 HOW TO:以程式設計方式撰寫服務。
在 [屬性] 視窗中,設定服務的 ServiceName 屬性。
注意事項: ServiceName 屬性的值必須永遠與安裝程式類別中記錄的名稱相符。如果您變更這個屬性,您也必須更新安裝程式類別中的 ServiceName 屬性。
設定下列任何屬性,以決定服務的運作方式。
屬性
設定
True 表示服務會接受停止執行的請求,false 表示防止服務停止執行。
True 表示服務在其所存在的電腦關機時希望收到通知,讓它可以呼叫 OnShutdown 程序。
True 表示服務會接受暫停或繼續執行的請求,false 表示防止服務暫停和繼續。
True 表示服務可以處理電腦電源狀態的變更通知,而 false 則可以避免服務收到這些變更通知。
True 表示當服務執行某個動作時,在應用程式事件記錄檔中寫入資訊項目,而 false 則表示停用此功能。如需詳細資訊,請參閱 HOW TO:記錄關於服務的資訊。
注意事項:根據預設,AutoLog 設定為 true。注意事項: 當 CanStop 或 CanPauseAndContinue 設定為 false 時,[服務控制管理員] 將會停用與停止、暫停或繼續服務有關的功能表選項。
覆寫您想要定義功能的任何其他方法。
為服務應用程式加入必要的安裝程式。如需詳細資訊,請參閱 HOW TO:加入 Installer 至服務應用程式。
從 [建置] 功能表中選取 [建置方案],建置您的專案。
注意事項: 請勿按 F5 執行專案,因為您無法以這種方式執行服務專案。
安裝服務。如需詳細資訊,請參閱 HOW TO:安裝及解除安裝服務。
請參閱
工作
逐步解說:在元件設計工具中建立 Windows 服務應用程式