Ich habe einen Dienst, dessen Starttyp auf Automatisch eingestellt ist. Bei einem unerwarteten Neustart konnte dieser Dienst jedoch aufgrund einer vorhandenen Sperrdatei nicht gestartet werden. Wie kann ich diese Sperrdatei automatisch löschen, bevor dieser Dienst versucht zu starten? Oder wie man die Sperrdatei erkennt und löscht, wenn der Dienst beim Start fehlgeschlagen ist? Mir ist die Registerkarte Wiederherstellung in den Diensteigenschaften bekannt. Ich benötige nur eine Batch-Datei, um die Löschaufgabe bei nachfolgenden Fehlern auszuführen. Wenn es einen effizienteren Weg gibt, würde ich das gerne begrüßen.
0
E:\DSpace\handle-server\txns
netsvc
, um festzustellen, ob die Datei gestartet wurde (und um sie neu zu starten), und um schnell zu überprüfen, ob diese Datei vorhanden ist. Ich versuche es später.Antworten:
Stackoverflow bietet ein hervorragendes Beispiel dafür, wie Sie feststellen können, ob ein Dienst ausgeführt wird, und ob Sie etwas tun können, wenn dies nicht der Fall ist :
Alles, was Sie tun müssen, ist,
MyServiceName
durch den Kurznamen Ihres Dienstes zu ersetzen und diese Batch-Datei dann in Ihrem Startordner abzulegen oder sie einfach auszuführen, wenn Sie müssen. Ich habe die Zeile zum Löschen Ihrer Sperrdatei bereits eingefügt.quelle