Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

ServiceControllerStatus-Enumeration

Aktualisiert: November 2007

Zeigt den aktuellen Zustand des Dienstes an.

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

public enum ServiceControllerStatus
public enum ServiceControllerStatus
public enum ServiceControllerStatus

MembernameBeschreibung
ContinuePendingDie Fortsetzung des Dienstes steht aus. Dies entspricht der Win32-SERVICE_CONTINUE_PENDING-Konstante, die als 0x00000005 definiert ist.
PausedDer Dienst wurde angehalten. Dies entspricht der Win32-SERVICE_PAUSED-Konstante, die als 0x00000007 definiert ist.
PausePendingDas Anhalten des Dienstes steht aus. Dies entspricht der Win32-SERVICE_PAUSE_PENDING-Konstante, die als 0x00000006 definiert ist.
RunningDer Dienst wird ausgeführt. Dies entspricht der Win32-SERVICE_RUNNING-Konstante, die als 0x00000004 definiert ist.
StartPendingDer Dienst wird gestartet. Dies entspricht der Win32-SERVICE_START_PENDING-Konstante, die als 0x00000002 definiert ist.
StoppedDer Dienst wird nicht ausgeführt. Dies entspricht der Win32-SERVICE_STOPPED-Konstante, die als 0x00000001 definiert ist.
StopPendingDer Dienst wird beendet. Dies entspricht der Win32-SERVICE_STOP_PENDING-Konstante, die als 0x00000003 definiert ist.

Die ServiceControllerStatus-Klasse wird von einer Instanz der ServiceController-Klasse verwendet, um anzugeben, ob ein vorhandener Dienst ausgeführt wird, beendet oder angehalten wurde bzw. ob ein Start-, Stop-, Pause- oder Continue-Befehl aussteht.

Im folgenden Beispiel wird der aktuelle Status des TelNet-Dienstes mithilfe der ServiceController-Klasse überprüft. Wenn der Dienst beendet wurde, wird er im Beispiel gestartet. Wenn der Dienst ausgeführt wird, wird er im Beispiel beendet.


// 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.
ServiceController sc = new ServiceController("Telnet");
Console.WriteLine("The Telnet service status is currently set to {0}",
    sc.get_Status().ToString());

if (sc.get_Status().Equals(ServiceControllerStatus.Stopped) || 
    sc.get_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.get_Status().ToString());


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1, 1.0
Anzeigen: