C# でWindowsサービスの「説明」を取得する方法

banner-service-description

 今回は、マイクロソフト VisualStudio2013のC#言語を使って、Widnowsサービスの「説明」の文章を取得するプログラムをご紹介します。

問題点と回避策

C#のライブラリで、サービスを制御するServiceControllerクラスではサービスの名前やステータスを得ることはできるのに、サービスの説明文は取得できるようになっていないので、別の方法で取得します。ちょうど、下記の画像のピンク色の部分のテキストです。

csharp-retrievesrvicedesc-servive

参照設定

Visual Studioのプロジェクトの参照設定で、「System.Management」を追加しておきます。

実際のソースコード

using System.Management; 
private string GetServiceDescription(string serviceName) 
{
  using (ManagementObject service = new ManagementObject(new ManagementPath(string.Format("Win32_Service.Name='{0}'", serviceName)))) 
  { 
    return service["Description"].ToString(); 
  } 
}

おわりに

spankyblogでは、今後もプログラミングのちょっとしたヒントを掲載していきたいと思います。

タイトルとURLをコピーしました