Export (0) Print
Expand All

ServiceControllerStatus Enumeration

Indicates the current state of the service.

Namespace:  System.ServiceProcess
Assembly:  System.ServiceProcess (in System.ServiceProcess.dll)

'Declaration
Public Enumeration ServiceControllerStatus

Member nameDescription
ContinuePendingThe service continue is pending. This corresponds to the Win32 SERVICE_CONTINUE_PENDING constant, which is defined as 0x00000005.
PausedThe service is paused. This corresponds to the Win32 SERVICE_PAUSED constant, which is defined as 0x00000007.
PausePendingThe service pause is pending. This corresponds to the Win32 SERVICE_PAUSE_PENDING constant, which is defined as 0x00000006.
RunningThe service is running. This corresponds to the Win32 SERVICE_RUNNING constant, which is defined as 0x00000004.
StartPendingThe service is starting. This corresponds to the Win32 SERVICE_START_PENDING constant, which is defined as 0x00000002.
StoppedThe service is not running. This corresponds to the Win32 SERVICE_STOPPED constant, which is defined as 0x00000001.
StopPendingThe service is stopping. This corresponds to the Win32 SERVICE_STOP_PENDING constant, which is defined as 0x00000003.

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.

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

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft