Programm überawchung und ggf neustart
Hi,
Ich habe folgendes Problem, ich habe ein Programm am laufen das teilweise abstürzt. Nun bräuchte ich ein programm was dieses überwacht und ggf neustartet.
Gibt es sowas in der Art schon?
Ich habe folgendes Problem, ich habe ein Programm am laufen das teilweise abstürzt. Nun bräuchte ich ein programm was dieses überwacht und ggf neustartet.
Gibt es sowas in der Art schon?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 60859
Url: https://administrator.de/contentid/60859
Ausgedruckt am: 22.11.2024 um 12:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo Sumylein und willkommen im Forum!
Ein Tool kann ich Dir nicht nennen, aber eine einfach Lösung per Batch könnte so aussehen:
Der Eintrag bei "set Tsk" muss der Anzeige für das Programm im Windows-Taskmanager (Register "Prozesse") bzw der Ausgabe, die Du mit dem CMD-Befehl "tasklist" erhältst, entsprechen.
Die Batchdatei prüft bei jedem Aufruf, ob der angegebene Prozess gefunden wird und startet anderenfalls das in Zeile 3 angegebene Programm. Die Batchdatei kannst Du über einen geplanten Task in regelmäßigen Abständen (zB alle 30 Minuten, falls das genügt) ausführen lassen.
Grüße
bastla
Ein Tool kann ich Dir nicht nennen, aber eine einfach Lösung per Batch könnte so aussehen:
@echo off & setlocal
set Tsk=notepad.exe
set "Prog=%windir%\System32\notepad.exe"
set Running=
for /f %%i in ('tasklist') do echo (%%i)|findstr /C:"(%Tsk%)" > nul && set Running=1
if not defined Running start "Starte ..." "%Prog%"
Die Batchdatei prüft bei jedem Aufruf, ob der angegebene Prozess gefunden wird und startet anderenfalls das in Zeile 3 angegebene Programm. Die Batchdatei kannst Du über einen geplanten Task in regelmäßigen Abständen (zB alle 30 Minuten, falls das genügt) ausführen lassen.
Grüße
bastla
Hi,
grundsätzlich ist das Prozedere einfach:
(1) du brauchst einen Testvorgang, der prüft, ob deine Anwendung da ist.
Da mein Blick in die Glaskugel nicht verraten konnte, um welche Art Software es sich handelt, kann ich es nur allg. formulieren. Ansätze wären:
a) prüfen des Ports (wenn es ein Server ist, der über einen definierten Port arbeitet)
b) prüfen einer konkreten Anfrage an dein Programm und Auswertung der Antwort
, ob diese korrekt ist (das klappt bei Diensten, wie Web, Datenbank, DNS etc ganz gut).
c) Prozessliste durchsehhen, ob der Prozess da ist (Kommando tasklist als Stichwort).
(2) Wenn Test von 1) fehlschlägt, das Programm beenden (falls es nur hängt) und dann neu starten.
Wenn dein Test funktioniert, packst du das Ganze in den Taskplaner.
Viele Grüsse
-= Axel =-
grundsätzlich ist das Prozedere einfach:
(1) du brauchst einen Testvorgang, der prüft, ob deine Anwendung da ist.
Da mein Blick in die Glaskugel nicht verraten konnte, um welche Art Software es sich handelt, kann ich es nur allg. formulieren. Ansätze wären:
a) prüfen des Ports (wenn es ein Server ist, der über einen definierten Port arbeitet)
b) prüfen einer konkreten Anfrage an dein Programm und Auswertung der Antwort
, ob diese korrekt ist (das klappt bei Diensten, wie Web, Datenbank, DNS etc ganz gut).
c) Prozessliste durchsehhen, ob der Prozess da ist (Kommando tasklist als Stichwort).
(2) Wenn Test von 1) fehlschlägt, das Programm beenden (falls es nur hängt) und dann neu starten.
Wenn dein Test funktioniert, packst du das Ganze in den Taskplaner.
Viele Grüsse
-= Axel =-
Hallo paulkuhn!
Soferne Du "Bordmittel" eng auslegst, käme eigentlich nur die "tlist.exe" aus der "SUPPORT.CAB" (Installations-CD, Ordner "\SUPPORT\TOOLS" (oder von hier) infrage.
Bei nur etwas weiterer Auslegung könntest Du auf PsList (ehemals SysInternals, jetzt schon länger MS) zurückgreifen (wobei hier darauf zu achten ist, dass der Dateityp nicht ausgegeben wird und daher auch nicht danach gesucht werden kann - es dürfte daher in Zeile 2 anstelle von "notepad.exe" nur "notepad" zugewiesen werden).
Grüße
bastla
Soferne Du "Bordmittel" eng auslegst, käme eigentlich nur die "tlist.exe" aus der "SUPPORT.CAB" (Installations-CD, Ordner "\SUPPORT\TOOLS" (oder von hier) infrage.
Bei nur etwas weiterer Auslegung könntest Du auf PsList (ehemals SysInternals, jetzt schon länger MS) zurückgreifen (wobei hier darauf zu achten ist, dass der Dateityp nicht ausgegeben wird und daher auch nicht danach gesucht werden kann - es dürfte daher in Zeile 2 anstelle von "notepad.exe" nur "notepad" zugewiesen werden).
Grüße
bastla