ServiceControllerStatus Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Indica el estado actual del servicio.
public enum class ServiceControllerStatus
public enum ServiceControllerStatus
type ServiceControllerStatus =
Public Enum ServiceControllerStatus
- Herencia
Campos
ContinuePending | 5 | La continuación del servicio está pendiente. Esto corresponde a la constante de Win32 |
Paused | 7 | El servicio está en pausa. Esto corresponde a la constante de Win32 |
PausePending | 6 | La pausa del servicio está pendiente. Esto corresponde a la constante de Win32 |
Running | 4 | El servicio está ejecutándose. Esto corresponde a la constante de Win32 |
StartPending | 2 | El servicio está iniciándose. Esto corresponde a la constante de Win32 |
Stopped | 1 | El servicio no está ejecutándose. Esto corresponde a la constante de Win32 |
StopPending | 3 | El servicio está deteniéndose. Esto corresponde a la constante de Win32 |
Ejemplos
En el ejemplo siguiente se usa la ServiceController clase para comprobar el estado actual del servicio TelNet. Si el servicio se detiene, el ejemplo inicia el servicio. Si el servicio se está ejecutando, el ejemplo detiene el servicio.
// 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)
Comentarios
Una ServiceControllerStatus instancia de la clase usa la ServiceController enumeración para indicar si un servicio existente está en ejecución, detenido, en pausa o si hay pendiente un comando Start, Stop, Pause o Continue.