次の方法で共有


ServiceControllerStatus 列挙型

定義

サービスの現在の状態を示します。

public enum class ServiceControllerStatus
public enum ServiceControllerStatus
type ServiceControllerStatus = 
Public Enum ServiceControllerStatus
継承
ServiceControllerStatus

フィールド

ContinuePending 5

サービスの継続は保留中です。 これは、Win32 の (0x00000005 として定義されている) SERVICE_CONTINUE_PENDING 定数に対応しています。

Paused 7

サービスは一時中断されています。 これは、Win32 の (0x00000007 として定義されている) SERVICE_PAUSED 定数に対応しています。

PausePending 6

サービスの一時中断は保留中です。 これは、Win32 の (0x00000006 として定義されている) SERVICE_PAUSE_PENDING 定数に対応しています。

Running 4

サービスは実行中です。 これは、Win32 の (0x00000004 として定義されている) SERVICE_RUNNING 定数に対応しています。

StartPending 2

サービスは開始中です。 これは、Win32 の (0x00000002 として定義されている) SERVICE_START_PENDING 定数に対応しています。

Stopped 1

サービスは実行されていません。 これは、Win32 の (0x00000001 として定義されている) SERVICE_STOPPED 定数に対応しています。

StopPending 3

サービスは停止中です。 これは、Win32 の (0x00000003 として定義されている) SERVICE_STOP_PENDING 定数に対応しています。

次の例では、 クラスを 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サービスが実行されているか、停止されているか、一時停止されているか、または Start、Stop、Pause、または Continue コマンドが保留中かどうかを示します。

適用対象

こちらもご覧ください