Sind wir uns nicht einig, dass es nicht funktioniert, wenn du diese beiden Abfragen in einem S***** hast, bzw. unsinnig ist?
Noch mal: Das S***** läuft durch und prüft, ob die EXE läuft, wenn nicht, dann beendet das S***** die EXE. So - wenn nun das S***** weiter läuft und prüft, ob die EXE beendet ist, dann merkt es, dass dies so ist und startet die EXE wieder.
Somit hast du die EXE einfach neugestartet (über einen komplizierten Weg) - noch schlimmer wäre es, wenn das S***** dauerhaft die Abfragen prüfen soll, denn dann hätten wir die von mir erwähnte Endlosschleife.
Das ergibt doch keinen Sinn!
Für mich würde es Sinn machen, wenn das S***** prüfen soll, ob die EXE läuft und wenn dies nicht so ist (Absturz etc.), dann startet das S***** die EXE einfach wieder und "klickt" bei der "Fehlermeldung" (abgesicherter Modus) einfach auf nein.