Gibt es eine Möglichkeit, von Code zu überprüfen, wenn ein anderer Prozess nicht antwortet?Wie überprüft man, ob der Prozess nicht reagiert?
Das Problem ist, selbst wenn die App abgestürzt ist und auf der Manager-Liste als "Nicht reagiert" markiert ist, die Process.Responding Eigenschaft gibt immer noch 'wahr' zurück.
Das Ereignis 'Exited' und die Funktion 'WaitForExit' führen Aktionen aus, wenn der Prozess "cleared exited" ist. Darum geht es nicht.
Problem in zwei Worten; Ich muss wissen, dass die Anwendung abgestürzt ist. Wie man es vom Code überprüft?
Vielen Dank für Ihre Zeit.
Hat der andere Prozess ein (sichtbares) Hauptfenster? Dies wird von 'Process.Responding' benötigt, siehe http://msdn.microsoft.com/en-us/library/system.diagnostics.process.responding.aspx –
Meine Anwendung muss den anderen Prozess überprüfen, der vom Benutzer definiert wurde die Laufzeit. also weiß ich nicht, ob es zum Beispiel eine Konsolen-App ist. – futurlo
Anders als Task-Manager Heuristik für GUI-Anwendungen (IIRC: verarbeitet es eine WN_NULL-Nachricht in einer rechtzeitigen Weise) gibt es keine allgemeine Möglichkeit, "hängen" zu bestimmen (z. B. könnte es auf etwas warten oder beschäftigt arbeiten). – Richard