ServiceControllerStatus 枚举
定义
指示服务的当前状态。Indicates the current state of the service.
public enum class ServiceControllerStatus
public enum ServiceControllerStatus
type ServiceControllerStatus =
Public Enum ServiceControllerStatus
- 继承
字段
ContinuePending | 5 | 服务即将继续。The service continue is pending. 这对应于 Win32 |
Paused | 7 | 服务已暂停。The service is paused. 这对应于 Win32 |
PausePending | 6 | 服务即将暂停。The service pause is pending. 这对应于 Win32 |
Running | 4 | 服务正在运行。The service is running. 这对应于 Win32 |
StartPending | 2 | 服务正在启动。The service is starting. 这对应于 Win32 |
Stopped | 1 | 服务未运行。The service is not running. 这对应于 Win32 |
StopPending | 3 | 服务正在停止。The service is stopping. 这对应于 Win32 |
示例
下面的示例使用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)
注解
枚举由ServiceController类的实例使用, 用于指示现有服务是正在运行、已停止还是已暂停, 或者启动、停止、暂停或继续命令是否处于挂起状态。 ServiceControllerStatusThe 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.