C-Sharp Process.Start und SubProcesses
Hallo @ All,
Ich kämpfe gerade mit SystemDiagnostics.Process.WaitForExit() bei Sub-Prozessen. Leider bin ich weit von einer Lösung entfernt und hoffe auf Hilfe hier im Forum.
Mein Problem im Detail:
Über eine GUI deinstalliere ich einige Programme die ich vorher in einer XML definiert habe. Natürlich sollen nicht alle Progrämmchen gleichzeitig aufgerufen werden. Deshalb warte ich auf das Ende des jeweiligen Prozesses mit SystemDiagnostics.Process.WaitForExit().
Z.B. Firefox verhält sich aber recht unkooperativ weil der HauptProcess ("C:\Program Files\Mozilla Firefox\uninstall\helper.exe") eine andere EXE aus %TMP% called (AU_.exe) und sich sofort wieder beendet. SystemDiagnostics.Process wartet nicht weil der Haupt-Process klarerweise schon beendet ist.
Ich habe versucht die PID für den Main-Prozess auszulesen und davon alle Childs, jedoch ohne Erfolg. mit dem Handle dito.
Meine Frage:
Wie kann ich alle Sub-Processe zum jeweiligen Main überwachen, und das Beenden der Subs abwarten bevor ich aus der Methode() springe??
Ich möchte die Funktionalität so generisch (nicht auf einen bestimmten Prozess festgenagelt) halten, weil sich die Programme die deinstalliert werden sollen immer wieder ändern können.
Für Ideen, Ansätze, CodeSnippeds und natürlich vollständige Lösungen

bin ich dankbar!
Grüße,
Mayho
Ich kämpfe gerade mit SystemDiagnostics.Process.WaitForExit() bei Sub-Prozessen. Leider bin ich weit von einer Lösung entfernt und hoffe auf Hilfe hier im Forum.
Mein Problem im Detail:
Über eine GUI deinstalliere ich einige Programme die ich vorher in einer XML definiert habe. Natürlich sollen nicht alle Progrämmchen gleichzeitig aufgerufen werden. Deshalb warte ich auf das Ende des jeweiligen Prozesses mit SystemDiagnostics.Process.WaitForExit().
Z.B. Firefox verhält sich aber recht unkooperativ weil der HauptProcess ("C:\Program Files\Mozilla Firefox\uninstall\helper.exe") eine andere EXE aus %TMP% called (AU_.exe) und sich sofort wieder beendet. SystemDiagnostics.Process wartet nicht weil der Haupt-Process klarerweise schon beendet ist.
Ich habe versucht die PID für den Main-Prozess auszulesen und davon alle Childs, jedoch ohne Erfolg. mit dem Handle dito.
Meine Frage:
Wie kann ich alle Sub-Processe zum jeweiligen Main überwachen, und das Beenden der Subs abwarten bevor ich aus der Methode() springe??
Ich möchte die Funktionalität so generisch (nicht auf einen bestimmten Prozess festgenagelt) halten, weil sich die Programme die deinstalliert werden sollen immer wieder ändern können.
Für Ideen, Ansätze, CodeSnippeds und natürlich vollständige Lösungen
Grüße,
Mayho
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 339438
Url: https://administrator.de/forum/c-sharp-process-start-und-subprocesses-339438.html
Ausgedruckt am: 13.04.2025 um 18:04 Uhr
4 Kommentare
Neuester Kommentar

Schau mal hier rein:
https://stackoverflow.com/questions/7189117/find-all-child-processes-of- ...
Das "Killen" natürlich weg denken.
Gruß v.
https://stackoverflow.com/questions/7189117/find-all-child-processes-of- ...
Das "Killen" natürlich weg denken.
Gruß v.