Suche Restarter

M-X

Vice Admiral Pro
Registriert
März 2007
Beiträge
6.999
Moin

ich suche einen restarter (checkt alle X sekunden ob der prozess lueft und wenn nicht startet er ihn automatisch) für einen normalen prozess beispiel.exe

das porblem an der sache ist das ich diesen prozess 2 mal offen haben muss dh 2 mal eine beispiel.exe und ich kann diese .exe nicht umbennen da sie sonst nicht funktiniert.

das problem ist also das 2 gleiche prozesse (beispiel.exe) laufen und ich einen restarter brauche der checkt ob beide laufen.

ich hoffe mir kann wer folgen und helfen =)

danke schonmal für lesen


mfg
 
Ich verrate dir so viel:

tasklist /FO TABLE /NH /FI "IMAGENAME eq beispiel.exe"

Wird kein Prozess gefunden kommt ne Info nach STDERR. Bei mind. einem Prozess kommt pro Prozess ne Meldung nach STDOUT. Das schreibst du in eine Datei oder ne Pipe (wenn das in Windows mit dem Befehl geht) und schickst es zum Befehl for. Damit zählst du die Zeilen - sind es zwei ist alles OK. Je nachdem wieviele Zeilen vorhanden sind kannst du mit nem if einen zusätzlichen Prozess starten. Das alles packst du in eine Batchdatei und legst nen Job in dem Task-Planer an.

gruß
hostile
 
Eine Batch-Datei schreiben kannst du. Mit "for /?" bekommst du ne Anleitung für "for".
Was aus STDOUT mit tasklist rauskommt schreibst du mit >> in eine Datei. Dann liest du sie mit for wieder aus bzw. zählst nur die Einträge - ist doch logisch, mehr brauchst du ja auch nicht. Du kannst bei "for" aber auch den Befehl direkt angeben. Variablen anlegen tut man in Batch mit "set", Bedingungen natürlich mit "if".
Bissl was musst du auch selbst tun ;) www.gidf.de

gruß
hostile
 
hm entweder ich steh auf dem schlauch oder ka ^^ ich habe jetzt 1 stunde gegoogelt.. bin aber genausoweit wie davor =(

ich habe mich im leben vll 2 mal mit einer batch datei asueinander gesetzt und mit dem was du mr sagtst komn ich nicht wirklich zurecht.

und die info die mir for/? ausspuckt hilft mir leider auch nicht

und ich weis überhaupt nicht was ich machen muss

könntest du mir ein beispiel oder so zeigen ?

danke schonmal

mfg
 
Geht es auch ein Programm als Dienst laufen zu lassen ?

Dort kann man einstellen "erster Versuch", "zweiter" u.s.w im Reiter Wiederherstellen, wenn das Programm beendet wird und wann neu gestartet werden soll.
Nur mal so eine Idee
 
...

Code:
@echo off
set /A j=0
for /F "tokens=*" %%i IN ('tasklist /FO TABLE /NH /FI "IMAGENAME eq beispiel.exe"') do (
	set /A j+=1
)

if /I "%j%" LSS "2" (
	echo Es laufen weniger als zwei Prozesse. 
) else (
	echo Es laufen zwei oder mehr als zwei Prozesse.
)

gruß
hostile
 
Zurück
Oben