Ich verwende Process.Kill()
, um einen Prozess zu beenden. Wie folgt aus:Wie kann ein Prozess abgebrochen werden, ohne dass eine Ausnahme "Prozess wurde beendet" angezeigt wird?
if(!process.WaitForExit(5000)) {
process.Kill();
}
und manchmal wird der Prozess verlassen direkt zwischen den Zeilen, so Steuerung innerhalb if
und dann Kill
wird ergeben eine Ausnahme:
System.InvalidOperationException
Cannot process request because the process (ProcessIdHere) has exited.
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.Kill()
//my code here
Nun Umwickeln Sie den Code in TRY Fang scheint keine gute Idee zu sein, denn InvalidOperationException
kann aus anderen Gründen aufgerufen werden.
Gibt es eine Möglichkeit, einen Prozess zu beenden, ohne eine Ausnahme in dem beschriebenen Szenario zu bekommen?
Haben Sie versucht, die interne Ausnahme zu überprüfen? Könnte Ihnen eine genaue Ausnahme geben. – Yahya
@Yahya: Yeap, innere Ausnahme ist zu allen Zeiten null. – sharptooth