ServiceControllerStatus 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指示服务的当前状态。
public enum class ServiceControllerStatus
public enum ServiceControllerStatus
type ServiceControllerStatus =
Public Enum ServiceControllerStatus
- 继承
字段
| 名称 | 值 | 说明 |
|---|---|---|
| Stopped | 1 | 服务未运行。 这对应于定义为0x00000001的 Win32 |
| StartPending | 2 | 服务正在启动。 这对应于定义为0x00000002的 Win32 |
| StopPending | 3 | 服务正在停止。 这对应于定义为0x00000003的 Win32 |
| Running | 4 | 服务正在运行。 这对应于定义为0x00000004的 Win32 |
| ContinuePending | 5 | 服务继续处于挂起状态。 这对应于定义为0x00000005的 Win32 |
| PausePending | 6 | 服务暂停处于挂起状态。 这对应于定义为0x00000006的 Win32 |
| Paused | 7 | 服务已暂停。 这对应于定义为0x00000007的 Win32 |
示例
以下示例使用 ServiceController 类检查 TelNet 服务的当前状态。 如果服务已停止,该示例将启动该服务。 如果服务正在运行,该示例将停止该服务。
// 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);
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.
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 实例用来指示现有服务是正在运行、停止、暂停还是“启动”、“停止”、“暂停”或“继续”命令挂起。