Frage

Von C # auf einem Windows-Feld gibt es eine Möglichkeit, um herauszufinden, wie ein Prozess beendet wurde? Ich habe einen Blick auf die Prozess Klasse hatte gelang einen netten und freundlichen Rückruf vom Exited Ereignisse zu erhalten, sobald ich EnableRaisingEvents = true; gesetzt, aber ich habe nicht, um herauszufinden, ob der Prozess getötet wurde oder ob es beendete natürlich verwaltet?

War es hilfreich?

Lösung

Process Monitor Feuer nach oben (von Sysinternals, einen Teil von Microsoft), führen Sie Ihren Prozess und lassen Sie es stirbt, dann filtern Sie die Process Monitor Ergebnisse nach Ihren Prozessnamen - Sie werden in der Lage sein, alles zu sehen, dass es tut, einschließlich Exit-Codes .

Andere Tipps

Sie können den Rückgabecode des Prozesses dafür. Wenn Ihr Prozess einen Wert ungleich Null von seinem Haupt Methode gibt, können Sie überprüfen, ob der Prozess selbst beendet (der Rückgabewert entspricht).

Nizza Antwort Antoine, leider kann ich nicht den Return-Code ändern. Meine schlecht - ich glaube, ich muss den Umfang der Frage verengen

.

Realistisch Ich glaube nicht, dass ich auch eine programmatische Lösung benötigen entweder - ein Programm wäre in Ordnung - ich habe einen Blick auf die beeindruckende hatte suchen Process Explorer aber, dass diese Daten nicht geben Sie mir erscheint.

Das Problem, das ich habe, ist das Programm, das ich verhören will durch ein Planungssystem ausgeführt wird, das entspricht Windows-geplante Aufgaben, aber nicht so. Gibt es eine Möglichkeit zu erkennen, ob die Planer mit Nachdruck das Programm stoppen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top