Windows XP Embedded で実行されている C# アプリケーションでは、特定の Windows サービスがサービスは現在アクティブです。これは、アプリケーションが Windows サービスとして実装されたウォッチドッグとの通信に依存している場合に特に便利です。これを実現するには、次の手法を検討してください。
System.ServiceProcess 名前空間の使用:
アプリケーションに System.ServiceProcess 名前空間を組み込み、ServiceController クラスを利用して対話します。 Windows サービスを使用します。
using System.ServiceProcess; ServiceController sc = new ServiceController(serviceName);
サービスの確認Status:
ServiceController の Status プロパティを使用して、サービスの現在のステータスを取得します。可能な値含まれるもの:
switch (sc.Status) { case ServiceControllerStatus.Running: // Service is running break; // Handle other status values here... }
Refreshing Status:
サービスの最新のステータスを取得するには、Status プロパティを確認する前に ServiceController の Refresh() メソッドを呼び出します。
注: ServiceController クラスの WaitforStatus() メソッドを使用すると、指定したタイムアウト期間内に特定のステータスを待機できます。この手法は、特定のシナリオで役立つ場合があります。
以上がC# アプリケーションから Windows サービスのステータスを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。