Zweck:Monitor-Dienst starten, pausieren und / oder stoppen

 

Format:SERVICEMONITOR [/C [name]]

SERVICEMONITOR [/=] name STARTED | PAUSED | STOPPED n command

 

nameGerätename
nAnzahl der Wiederholungen (oder FOREVER)
commandAuszuführender Befehl, wenn die Bedingung ausgelöst wird

 

/C(lear)

 

Verwendung:

 

Der Dienstname kann Wildcards enthalten.

 

Die Befehlszeile wird geparst und expandiert, bevor SERVICEMONITOR ausgeführt wird. Wenn Sie also Umleitungszeichen oder Variablen an den Befehlübergeben wollen , müssen Sie diese schützen (indem Sie sie in einfache Anführungszeichen setzen, die %-Zeichen verdoppeln oder eine Befehlsgruppierung verwenden).

 

Wenn das letzte Argument in der Zeile ein einzelnes ( ist , wird es als der Beginn einer Befehlsgruppe interpretiert. SERVICEMONITOR fügt die folgenden Zeilen an (in einer Batch-Datei) oder fordert Sie zu weiteren Eingaben auf (in der Befehlszeile), bis er ein abschließendes )erhält .

 

Wenn Sie keine Argumente eingeben, zeigt SERVICEMONITOR die Dienste an, die er gerade überwacht.

 

Die Überwachung läuft asynchron in einem separaten Thread. Wenn die Bedingung ausgelöst wird, wird der Befehl sofort ausgeführt. Dies kann zu Problemen führen, wenn Sie versuchen, in die Anzeige zu schreiben oder auf Dateien zuzugreifen, während der Haupt TCC Thread auch E/A durchführt. Möglicherweise müssen Sie START oder DETACH im Befehl verwenden , um Konflikte zu vermeiden.

 

SERVICEMONITOR erstellt mehrere Umgebungsvariablen, wenn ein Dienst gestartet, pausiert oder gestoppt wird, die per Befehlabgefragt werden können .  Die Variablen werden nach  Ausführung desBefehls gelöscht .

 

_servicedisplayAnzeigename, der von Dienststeuerungsprogrammen zur Identifizierung des Dienstes verwendet wird

 

_servicenameDer Name des Dienstes in der Datenbank des Dienstkontrollmanagers

 

_servicecountDie Anzahl der Auslösungen des Befehls

 

_servicestateDer aktuelle Zustand des Dienstes. Die möglichen Werte sind:

 

1Der Dienst ist gestoppt
2Der Dienst wird gerade gestartet
3Der Dienst wird angehalten
4Der Dienst wird ausgeführt
5Der Dienst continue steht an
6Der Dienst pausiert
7Der Dienst ist pausiert

 

Beispiel:

 

Senden Sie eine E-Mail, wenn der Dienst "mytestservice" anhält:

 

SERVICEMONITOR mytestservice STOPPED sendmail [email protected] "Service Stopped" Der Windows-Dienst "mytestservice" wurde angehalten!

 

Optionen:

 

/=Zeigt den SERVICEMONITOR-Befehlsdialog an, um Ihnen bei der Einstellung der Befehlszeilenoptionen zu helfen. Die Option /= kann an einer beliebigen Stelle in der Zeile stehen; zusätzliche Optionen setzen die entsprechenden Felder im Befehlsdialog.

 

/CWenn der Name angegeben ist, wird der Monitor für diesen Dienst entfernt. Andernfalls werden alle Dienstmonitore entfernt.