ServiceController.ExecuteCommand(Int32) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wykonuje polecenie niestandardowe w usłudze.
public:
void ExecuteCommand(int command);
public void ExecuteCommand (int command);
member this.ExecuteCommand : int -> unit
Public Sub ExecuteCommand (command As Integer)
Parametry
- command
- Int32
Flaga polecenia zdefiniowana przez aplikację wskazująca, które polecenie niestandardowe ma zostać wykonane. Wartość musi należeć do przedziału od 128 do 256 włącznie.
Wyjątki
Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.
Nie można odnaleźć usługi.
Przykłady
Poniższy przykład kodu przedstawia użycie ServiceController.ExecuteCommand(Int32) metody do wykonywania niestandardowych poleceń w przykładzie SimpleService
usługi.
using System;
using System.ServiceProcess;
namespace test_exec_cmnd
{
class Program
{
private enum SimpleServiceCustomCommands { StopWorker = 128, RestartWorker, CheckWorker };
static void Main(string[] args)
{
ServiceController myService = new ServiceController("SimpleService");
myService.ExecuteCommand((int)SimpleServiceCustomCommands.StopWorker);
myService.ExecuteCommand((int)SimpleServiceCustomCommands.RestartWorker);
myService.ExecuteCommand((int)SimpleServiceCustomCommands.CheckWorker);
}
}
}
Imports System.ServiceProcess
Class Program
Private Enum SimpleServiceCustomCommands
StopWorker = 128
RestartWorker
CheckWorker '
End Enum 'SimpleServiceCustomCommands
Shared Sub Main(ByVal args() As String)
Dim myService As New ServiceController("SimpleService")
myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.StopWorker))
myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.RestartWorker))
myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.CheckWorker))
End Sub
End Class
Uwagi
Podczas wywoływania ExecuteCommandwywołania stan usługi nie zmienia się. Jeśli usługa została uruchomiona, stan pozostanie .Running
Jeśli usługa została zatrzymana, stan pozostaje Stopped
i tak dalej. Aby przetworzyć polecenie niestandardowe, usługa musi zastąpić metodę OnCustomCommand i podać procedurę obsługi dla polecenia zidentyfikowanego command
przez parametr .