ServiceController.ExecuteCommand(Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Führt einen benutzerdefinierten Befehl für den Dienst aus.
public:
void ExecuteCommand(int command);
public void ExecuteCommand(int command);
member this.ExecuteCommand : int -> unit
Public Sub ExecuteCommand (command As Integer)
Parameter
- command
- Int32
Ein anwendungsdefiniertes Befehlsflagge, das angibt, welcher benutzerdefinierte Befehl ausgeführt werden soll. Der Wert muss zwischen 128 und 256 (einschließlich) liegen.
Ausnahmen
Fehler beim Zugriff auf eine System-API.
Der Dienst wurde nicht gefunden.
Beispiele
Das folgende Codebeispiel zeigt die Verwendung der ServiceController.ExecuteCommand(Int32) Methode zum Ausführen von benutzerdefinierten Befehlen im SimpleService Dienstbeispiel.
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
Hinweise
Wenn Sie den Dienst aufrufen ExecuteCommand, ändert sich der Status des Diensts nicht. Wenn der Dienst gestartet wurde, bleibt Runningder Status . Wenn der Dienst beendet wurde, bleibt Stoppedder Status usw. Um den benutzerdefinierten Befehl zu verarbeiten, muss der Dienst die OnCustomCommand Methode überschreiben und einen Handler für den durch den command Parameter identifizierten Befehl bereitstellen.