System.ServiceProcess 名前空間は、Windows サービス アプリケーションを実装、インストール、制御できるようにするためのクラスを提供します。サービスは、ユーザー インターフェイスを表示せずに長時間にわたって動作する実行可能ファイルです。サービスの実装では、 ServiceBase クラスから継承し、開始、停止、一時停止、継続の各コマンドが渡されたときに処理する特定の動作や、システムのシャットダウン時に実行されるカスタムの動作とアクションを定義できます。
サービスは、InstallUtil.exe などのインストール ユーティリティを使用してインストールします。 System.ServiceProcess 名前空間には、サービス情報をレジストリに書き込むインストール クラスが用意されています。 ServiceProcessInstaller クラスは、1 回にインストールされるすべてのサービスに共通のコンポーネントをインストールする包括的なクラスを提供します。サービス固有の機能をインストールするには、サービスごとに ServiceInstaller クラスのインスタンスを作成します。
ServiceController クラスを使用すると、既存のサービスに接続して、そのサービスを操作したり、そのサービスに関する情報を取得したりできます。通常、このクラスは管理機能において使用されます。このクラスを使用すると、サービスに対してカスタム コマンドを開始、停止、一時停止、継続、または実行できます。 ServiceBase クラスが、コマンドの発生時にサービスが実行する処理を定義している一方で、 ServiceController は、そのサービスに対してこれらのコマンドを呼び出すことができるようにするエージェントになります。
クラス
クラス | 説明 |
---|---|
ServiceBase | サービス アプリケーションの一部として存在するサービスの基本クラスを提供します。 ServiceBase は、新しいサービス クラスの作成時に派生される必要があります。 |
ServiceController | Windows サービスを表し、実行中のサービスまたは停止したサービスへの接続、サービスの操作、またはサービスに関する情報の取得を実現します。 |
ServiceControllerPermission | サービス コントローラに対するコード アクセス セキュリティ アクセス許可を制御できるようにします。 |
ServiceControllerPermissionAttribute | 宣言サービス コントローラのアクセス許可をチェックできるようにします。 |
ServiceControllerPermissionEntry | ServiceController に対して設定するコード アクセス セキュリティ アクセス許可の最小単位を定義します。 |
ServiceControllerPermissionEntryCollection | ServiceControllerPermissionEntry オブジェクトの厳密に型指定されたコレクションを格納します。 |
ServiceInstaller | ServiceBase を拡張するクラスをインストールしてサービスを実装します。このクラスは、サービス アプリケーションのインストール時に、インストール ユーティリティで呼び出されます。 |
ServiceProcessDescriptionAttribute | プロパティまたはイベントの説明を指定します。 |
ServiceProcessInstaller | ServiceBase を拡張するクラスを含む実行可能ファイルをインストールします。このクラスは、サービス アプリケーションのインストール時に InstallUtil.exe などのインストール ユーティリティで呼び出されます。 |
TimeoutException | 指定したタイムアウト時間が経過するとスローされる例外。 |
列挙体
列挙体 | 説明 |
---|---|
PowerBroadcastStatus | システムの電源ステータスを示します。 |
ServiceAccount | サービスのセキュリティ コンテキストを指定します。このコンテキストにより、そのサービスのログオンの種類が定義されます。 |
ServiceControllerPermissionAccess | ServiceController アクセス許可クラスによって使用されるアクセス レベルを定義します。 |
ServiceControllerStatus | サービスの現在の状態を示します。 |
ServiceStartMode | サービスの開始モードを示します。 |
ServiceType | サービスの種類を表します。 |