ServiceController.GetServices メソッド

定義

コンピューターのデバイス以外のドライバー サービス、およびドライバー以外のサービスを取得します。

オーバーロード

GetServices(String)

デバイス ドライバー サービス以外の、指定したコンピューターのすべてのサービスを取得します。

GetServices()

デバイス ドライバー サービス以外の、ローカル コンピューターのすべてのサービスを取得します。

GetServices(String)

デバイス ドライバー サービス以外の、指定したコンピューターのすべてのサービスを取得します。

public:
 static cli::array <System::ServiceProcess::ServiceController ^> ^ GetServices(System::String ^ machineName);
public static System.ServiceProcess.ServiceController[] GetServices (string machineName);
static member GetServices : string -> System.ServiceProcess.ServiceController[]
Public Shared Function GetServices (machineName As String) As ServiceController()

パラメーター

machineName
String

サービスを取得する対象のコンピューター。

戻り値

ServiceController[]

ServiceController 型の配列。この配列の各要素は、指定したコンピューターのサービスに関連付けられています。

例外

システム API にアクセス中にエラーが発生しました。

machineName パラメーターの構文が無効です。

注釈

GetServices は、デバイス ドライバー以外のサービスと、指定したコンピューターのドライバーではないサービスのみを返します。 デバイス ドライバー サービスを取得するには、メソッドを GetDevices 呼び出します。 これら 2 つの方法を組み合わせることで、コンピューター上のすべてのサービスへのアクセスが提供されます。

こちらもご覧ください

適用対象

GetServices()

デバイス ドライバー サービス以外の、ローカル コンピューターのすべてのサービスを取得します。

public:
 static cli::array <System::ServiceProcess::ServiceController ^> ^ GetServices();
public static System.ServiceProcess.ServiceController[] GetServices ();
static member GetServices : unit -> System.ServiceProcess.ServiceController[]
Public Shared Function GetServices () As ServiceController()

戻り値

ServiceController[]

ServiceController 型の配列。この配列の各要素は、ローカル コンピューターのサービスに関連付けられています。

例外

システム API にアクセス中にエラーが発生しました。

次の例では、クラスを ServiceController 使用して、ローカル コンピューターで実行されているサービスを表示します。

array<ServiceController^>^scServices = ServiceController::GetServices();

// Display the list of services currently running on this computer.
Console::WriteLine(  "Services running on the local computer:" );
for each (ServiceController^ scTemp in scServices)
{
   if ( scTemp->Status == ServiceControllerStatus::Running )
   {
      // Write the service name and the display name
      // for each running service.
      Console::WriteLine();
      Console::WriteLine(  "  Service :        {0}", scTemp->ServiceName );
      Console::WriteLine(  "    Display name:    {0}", scTemp->DisplayName );

      // Query WMI for additional information about this service.
      // Display the start name (LocalSystem, etc) and the service
      // description.
      ManagementObject^ wmiService;
      String^ objPath;
      objPath = String::Format( "Win32_Service.Name='{0}'", scTemp->ServiceName );
      wmiService = gcnew ManagementObject( objPath );
      if ( wmiService )
      {
         wmiService->Get();
         Object^ objStartName = wmiService["StartName"];
         Object^ objDescription = wmiService["Description"];
         if ( objStartName )
         {
            Console::WriteLine(  "    Start name:      {0}", objStartName->ToString() );
         }
         if ( objDescription )
         {
            Console::WriteLine(  "    Description:     {0}", objDescription->ToString() );
         }
      }
   }
}
ServiceController[] scServices;
scServices = ServiceController.GetServices();

// Display the list of services currently running on this computer.

Console.WriteLine("Services running on the local computer:");
foreach (ServiceController scTemp in scServices)
{
   if (scTemp.Status == ServiceControllerStatus.Running)
   {
      // Write the service name and the display name
      // for each running service.
      Console.WriteLine();
      Console.WriteLine("  Service :        {0}", scTemp.ServiceName);
      Console.WriteLine("    Display name:    {0}", scTemp.DisplayName);

      // Query WMI for additional information about this service.
      // Display the start name (LocalSystem, etc) and the service
      // description.
      ManagementObject wmiService;
      wmiService = new ManagementObject("Win32_Service.Name='" + scTemp.ServiceName + "'");
      wmiService.Get();
      Console.WriteLine("    Start name:      {0}", wmiService["StartName"]);
      Console.WriteLine("    Description:     {0}", wmiService["Description"]);
   }
}

   Dim scServices() As ServiceController
   scServices = ServiceController.GetServices()
 
   ' Display the list of services currently running on this computer.
   Console.WriteLine("Services running on the local computer:")

   Dim scTemp As ServiceController
   For Each scTemp In  scServices

      If scTemp.Status = ServiceControllerStatus.Running Then
         ' Write the service name and the display name
         ' for each running service.
         Console.WriteLine()
         Console.WriteLine("  Service :        {0}", scTemp.ServiceName)
         Console.WriteLine("    Display name:    {0}", scTemp.DisplayName)
         
         ' Query WMI for additional information about this service.
         ' Display the start name (LocalSystem, etc) and the service
         ' description.
         Dim wmiService As ManagementObject
         wmiService = New ManagementObject("Win32_Service.Name='" + scTemp.ServiceName + "'")
         wmiService.Get()
         Console.WriteLine("    Start name:      {0}", wmiService("StartName"))
         Console.WriteLine("    Description:     {0}", wmiService("Description"))
      End If

   Next scTemp

注釈

GetServices は、デバイス ドライバー以外のサービスと、ローカル コンピューターからドライバーではないサービスのみを返します。 デバイス ドライバー サービスを取得するには、メソッドを GetDevices 呼び出します。 これら 2 つの方法を組み合わせることで、コンピューター上のすべてのサービスへのアクセスが提供されます。

こちらもご覧ください

適用対象