ServiceController.GetServices Método

Definição

Recupera os serviços que não são controladores de dispositivo num computador, bem como aqueles que não são drivers.

Sobrecargas

Name Description
GetServices(String)

Recupera todos os serviços no computador especificado, exceto os serviços do controlador de dispositivos.

GetServices()

Recupera todos os serviços no computador local, exceto os serviços do controlador de dispositivos.

GetServices(String)

Recupera todos os serviços no computador especificado, exceto os serviços do controlador de dispositivos.

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()

Parâmetros

machineName
String

O computador de onde se retiram os serviços.

Devoluções

Um array do tipo ServiceController em que cada elemento está associado a um serviço no computador especificado.

Exceções

Ocorreu um erro ao aceder a uma API do sistema.

O machineName parâmetro tem uma sintaxe inválida.

Observações

GetServices retorna apenas os serviços que não são drivers de dispositivo e os serviços que não são drivers do computador especificado. Para recuperar serviços de drivers de dispositivos, chame o GetDevices método. Juntos, os dois métodos fornecem acesso a todos os serviços num computador.

Ver também

Aplica-se a

GetServices()

Recupera todos os serviços no computador local, exceto os serviços do controlador de dispositivos.

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()

Devoluções

Um array de tipo ServiceController em que cada elemento está associado a um serviço no computador local.

Exceções

Ocorreu um erro ao aceder a uma API do sistema.

Exemplos

O exemplo seguinte utiliza a ServiceController classe para mostrar os serviços que estão a correr no computador local.

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

Observações

GetServices retorna apenas os serviços que não são drivers de dispositivo e os serviços que não são drivers do computador local. Para recuperar serviços de drivers de dispositivos, chame o GetDevices método. Juntos, os dois métodos fornecem acesso a todos os serviços num computador.

Ver também

Aplica-se a