다음을 통해 공유


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 메서드. 두 메서드는 함께 컴퓨터의 모든 서비스에 대한 액세스를 제공합니다.

추가 정보

적용 대상

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 메서드. 두 메서드는 함께 컴퓨터의 모든 서비스에 대한 액세스를 제공합니다.

추가 정보

적용 대상