Frage

Wenn in meiner C # -Anwendung, ich bin ein Kind Prozess zu schaffen, die entweder normal beenden kann, oder misbehaving beginnen, in dem Fall, dass ich kündige es mit einem Aufruf an Process.Kill (). Allerdings würde ich gerne wissen, ob die Prozess wird beendet normally.I weiß, dass ich den Fehlercode eines beendeten Prozesses bekommen, aber was wäre ein normaler Exit-Code und was bedeuten würde, dass der Prozess getötet wurde?

War es hilfreich?

Lösung

Sie können die Eigenschaft Exitcode verwenden, aber leider das hängt davon ab, wie der App integriert ist. Also, wenn Sie den Quellcode für die App haben stellen Sie sicher, dass es korrekt auf einen guten Ausgang zurückkehrt. Sehen Sie bitte diesen Link Msdn Beschreibung dieses mehr im Detail: http://msdn.microsoft.com/en- us / library / system.diagnostics.process.exitcode.aspx

Andere Tipps

Der Quellcode für Process.Kill () in zeigt die Einstellung der Exit-Code auf -1 (Stand: September 2012). Das Windows-Betriebssystem verwendet tatsächlich 32-Bit-Werte ohne Vorzeichen für den Exit-Codes, aber ich glaube, die signed-> unsigned-> unterzeichneten Übersetzungen in C # sollten funktionieren (Ich brauche nur für Null oder nicht Null zu überprüfen, so spielt es keine Rolle für mein Code).

Auf der anderen Seite, ist dies offensichtlich nicht dokumentiert Verhalten (Warum?) So Microsoft es morgen ändern könnte und meinen Code bricht durch den Exit-Code auf 0 setzen.

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