Batch Datei starten sobald ein Bestimmtes Program ausgeführt wird?
Hallo, ich möchte das meine Batch Datei aus geführt wird sobald jemand auf dem Computer ein Bestimmtes Program startet. kann mir jemand helfen?
2 Antworten
Eine Native Möglichkeit gibt es dafür nicht...
Theoretisch wäre es möglich in einer Endlosschleife zu testen ob ein Prozess gestartet wurde.
test_Start.cmd
@echo off
echo Ich warte auf den Start von Notepad.exe!
:loop
tasklist /fi "ImageName eq notepad.exe"|find "notepad.exe" >nul||goto loop
rem hier was getan werden soll wen das Programm gestartet wurde...
echo notepad wurde gestartet!
pause
...sows ist jedoch absoluter Nonsens. diese kleine Batch pollt bis zum Start von Notepad und frisst dabei ca. 15% Prozessorleistung (Das willst Du nicht wirklich haben...)
Der normale Weg wäre eine Batch welche statt des Programms gestartet wird und ausführt, was vor dem Programmstart getan werden soll und nach dessen Beendigung
notepad.cmd
@echo off
rem was vor dem Start Deines Programms ausgeführt werden soll
echo ich mache irgendwas
echo ...beende den Editor...
rem starte Dein Programm (hier zur Demo Notepad.exe) !!!damit es keine "Rückkopplungen" gibt vollen Pfad angeben!!!
C:\Windows\Notepad.exe
rem was nach schließen des Progamms ausgeführt werden soll
echo ich mache irgendwas hinterher
pause
Du kannst auch etwas Parallel zur Ausführung eines Programms ausführen.
notepad.cmd
start "" "C:\Windows\Notepad.exe"
echo Notepad wurde gestartet und ich mache etwas anderes
pause
Das sind die Möglichkeiten welche Du hast...
Als Idee, Du schreibst eine Batchdatei, die so aussieht wie das Programm und den gleichen Namen hat und das Deine Wünsche erfüllt und dann das Programm startet.