Поделиться через


ServiceController.Stop Метод

Определение

Перегрузки

Stop()

Останавливает данную службу и все зависящие от нее службы.

Stop(Boolean)

Останавливает службу и при необходимости все службы, которые зависят от этой службы.

Stop()

Исходный код:
ServiceController.cs
Исходный код:
ServiceController.cs

Останавливает данную службу и все зависящие от нее службы.

public:
 void Stop();
public void Stop ();
member this.Stop : unit -> unit
Public Sub Stop ()

Исключения

Произошла ошибка при обращении к API-интерфейсу системы.

Служба не была найдена.

Примеры

В следующем примере класс используется 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)

Комментарии

Если какие-либо службы зависят от этой службы для их работы, они будут остановлены до остановки этой службы. Свойство DependentServices содержит набор служб, зависящих от этого.

При остановке службы, от которую зависит эта служба, вызовите Stop метод для этой службы в Stop методе родительской службы. Свойство ServicesDependedOn содержит службы, от которые зависит эта служба.

См. также раздел

Применяется к

Stop(Boolean)

Исходный код:
ServiceController.cs
Исходный код:
ServiceController.cs

Останавливает службу и при необходимости все службы, которые зависят от этой службы.

public:
 void Stop(bool stopDependentServices);
public void Stop (bool stopDependentServices);
member this.Stop : bool -> unit
Public Sub Stop (stopDependentServices As Boolean)

Параметры

stopDependentServices
Boolean

true , чтобы остановить все запущенные зависимые службы вместе со службой; false значение , чтобы остановить только службу.

Комментарии

Если какие-либо другие службы зависят от этой службы, необходимо либо передать truestopDependentServices их, либо остановить их вручную перед вызовом этого метода.

Применяется к