サービス プログラム
サービス プログラム には、1 つ以上のサービスの実行可能コードが含まれています。 SERVICE_WIN32_OWN_PROCESS型で作成されたサービス プログラムには、1 つのサービスのみのコードが含まれています。 SERVICE_WIN32_SHARE_PROCESS型で作成されたサービス プログラムには、複数のサービスのコードが含まれているので、コードを共有できます。 これを行うサービス プログラムの例として、内部 Windows サービスをホストする汎用サービス ホスト プロセス (Svchost.exe) があります。 Svchost.exe はオペレーティング システムで使用するために予約されており、Windows 以外のサービスでは使用しないでください。 代わりに、開発者は独自のサービス ホスティング プログラムを実装する必要があります。
サービス プログラムは、組み込み (ローカル)、プライマリ、または信頼されたドメインからユーザー アカウントのコンテキストで実行するように構成できます。 また、特別な サービス ユーザー アカウントで実行するように構成することもできます。
次のトピックでは、サービス プログラムに含める必要がある サービス コントロール マネージャー (SCM) のインターフェイス要件について説明します。
これらのトピックは、ドライバー サービスには適用されません。 ドライバー サービスのインターフェイス要件については、Windows ドライバー キット (WDK) を参照してください。
サービスは、システムのパフォーマンス、応答性、エネルギー効率、セキュリティに影響を与える可能性のあるバックグラウンド プロセスとして実行されます。 サービスの最適化のガイドラインについては、「Windowsの効率的なバックグラウンド プロセスの開発」を参照してください。 次のトピックでは、プログラミングに関するその他の考慮事項について説明します。
- サービス状態遷移の
- サービス でイベントを受信する
- マルチスレッド サービス の
- サービスとレジストリ
- サービスとリダイレクトされたドライブの
- サービス トリガー イベント
サービス プログラムが RPC サーバーとして機能する場合は、動的エンドポイントと相互認証を使用する必要があることに注意してください。