ServiceControllerStatus ServiceControllerStatus ServiceControllerStatus ServiceControllerStatus Enum

定义

指示服务的当前状态。Indicates the current state of the service.

public enum class ServiceControllerStatus
public enum ServiceControllerStatus
type ServiceControllerStatus = 
Public Enum ServiceControllerStatus
继承
ServiceControllerStatusServiceControllerStatusServiceControllerStatusServiceControllerStatus

字段

ContinuePending ContinuePending ContinuePending ContinuePending 5

服务即将继续。The service continue is pending. 这对应于 Win32 SERVICE_CONTINUE_PENDING 常数,该常数定义为 0x00000005。This corresponds to the Win32 SERVICE_CONTINUE_PENDING constant, which is defined as 0x00000005.

Paused Paused Paused Paused 7

服务已暂停。The service is paused. 这对应于 Win32 SERVICE_PAUSED 常数,该常数定义为 0x00000007。This corresponds to the Win32 SERVICE_PAUSED constant, which is defined as 0x00000007.

PausePending PausePending PausePending PausePending 6

服务即将暂停。The service pause is pending. 这对应于 Win32 SERVICE_PAUSE_PENDING 常数,该常数定义为 0x00000006。This corresponds to the Win32 SERVICE_PAUSE_PENDING constant, which is defined as 0x00000006.

Running Running Running Running 4

服务正在运行。The service is running. 这对应于 Win32 SERVICE_RUNNING 常数,该常数定义为 0x00000004。This corresponds to the Win32 SERVICE_RUNNING constant, which is defined as 0x00000004.

StartPending StartPending StartPending StartPending 2

服务正在启动。The service is starting. 这对应于 Win32 SERVICE_START_PENDING 常数,该常数定义为 0x00000002。This corresponds to the Win32 SERVICE_START_PENDING constant, which is defined as 0x00000002.

Stopped Stopped Stopped Stopped 1

服务未运行。The service is not running. 这对应于 Win32 SERVICE_STOPPED 常数,该常数定义为 0x00000001。This corresponds to the Win32 SERVICE_STOPPED constant, which is defined as 0x00000001.

StopPending StopPending StopPending StopPending 3

服务正在停止。The service is stopping. 这对应于 Win32 SERVICE_STOP_PENDING 常数,该常数定义为 0x00000003。This corresponds to the Win32 SERVICE_STOP_PENDING constant, which is defined as 0x00000003.

示例

下面的示例使用ServiceController类,以检查 TelNet 服务的当前状态。The following example uses the ServiceController class to check the current status of the TelNet service. 如果服务已停止,该示例将启动此服务。If the service is stopped, the example starts the service. 如果该服务正在运行,此示例将停止该服务。If the service is running, the example stops the service.

// Toggle the Telnet service - 
// If it is started (running, paused, etc), stop the service.
// If it is stopped, start the service.
ServiceController^ sc = gcnew ServiceController(  "Telnet" );
if ( sc )
{
   Console::WriteLine(  "The Telnet service status is currently set to {0}", sc->Status );
   if ( (sc->Status == (ServiceControllerStatus::Stopped) ) || (sc->Status == (ServiceControllerStatus::StopPending) ) )
   {
      // Start the service if the current status is stopped.
      Console::WriteLine(  "Starting the Telnet service..." );
      sc->Start();
   }
   else
   {
      // Stop the service if its status is not set to "Stopped".
      Console::WriteLine(  "Stopping the Telnet service..." );
      sc->Stop();
   }

   // Refresh and display the current service status.
   sc->Refresh();
   Console::WriteLine(  "The Telnet service status is now set to {0}.", sc->Status );

// Toggle the Telnet service - 
// If it is started (running, paused, etc), stop the service.
// If it is stopped, start the service.
ServiceController sc = new ServiceController("Telnet");
Console.WriteLine("The Telnet service status is currently set to {0}", 
                  sc.Status.ToString());

if  ((sc.Status.Equals(ServiceControllerStatus.Stopped)) ||
     (sc.Status.Equals(ServiceControllerStatus.StopPending)))
{
   // Start the service if the current status is stopped.

   Console.WriteLine("Starting the Telnet service...");
   sc.Start();
}  
else
{
   // Stop the service if its status is not set to "Stopped".

   Console.WriteLine("Stopping the Telnet service...");
   sc.Stop();
}  

// Refresh and display the current service status.
sc.Refresh();
Console.WriteLine("The Telnet service status is now set to {0}.", 
                   sc.Status.ToString());


' Toggle the Telnet service - 
' If it is started (running, paused, etc), stop the service.
' If it is stopped, start the service.
Dim sc As New ServiceController("Telnet")
Console.WriteLine("The Telnet service status is currently set to {0}", sc.Status)

If sc.Status.Equals(ServiceControllerStatus.Stopped) Or sc.Status.Equals(ServiceControllerStatus.StopPending) Then
   ' Start the service if the current status is stopped.
   Console.WriteLine("Starting the Telnet service...")
   sc.Start()
Else
   ' Stop the service if its status is not set to "Stopped".
   Console.WriteLine("Stopping the Telnet service...")
   sc.Stop()
End If

' Refresh and display the current service status.
sc.Refresh()
Console.WriteLine("The Telnet service status is now set to {0}.", sc.Status)

注解

ServiceControllerStatus枚举由的实例ServiceController类,以指示现有服务是否正在运行,停止、 暂停,或者启动、 停止、 暂停或继续命令是否挂起。The ServiceControllerStatus enumeration is used by an instance of the ServiceController class to indicate whether an existing service is running, stopped, paused, or whether a Start, Stop, Pause, or Continue command is pending.

适用于

另请参阅