Ordentliche Beendigung von C#-Anwendungen
Das korrekte Schließen von C#-Anwendungen ist für die Anwendungsstabilität von entscheidender Bedeutung. Dieser Artikel befasst sich mit dem häufigen Problem, dass Anwendungen nach dem Schließen des Hauptformulars nicht vollständig heruntergefahren werden.
Application.Exit
vs. Environment.Exit
Es gibt zwei primäre Methoden zum Beenden von C#-Anwendungen: Application.Exit
und Environment.Exit
. Application.Exit
wird im Allgemeinen für Windows Forms-Anwendungen bevorzugt, die mit Application.Run
initiiert werden, während Environment.Exit
eher für Konsolenanwendungen geeignet ist.
Umgang mit FormClosed
und FormClosing
Ereignissen
Wenn FormClosed
- oder FormClosing
-Ereignisse zum Verwalten des Formularabschlusses verwendet werden, kann die Verwendung von this.Hide()
das ordnungsgemäße Beenden der Anwendung verhindern. Verwenden Sie this.Close()
oder System.Windows.Forms.Application.Exit()
, um sicherzustellen, dass die Anwendung vollständig heruntergefahren wird.
Nutzung des MessageLoop
Eigentums
Um die richtige Beendigungsmethode auszuwählen, überprüfen Sie die Eigenschaft System.Windows.Forms.Application.MessageLoop
. Der Wert true
weist auf eine ausgeführte Windows Forms-Anwendung hin, die die Verwendung von Application.Exit
erfordert. Umgekehrt bedeutet ein false
-Wert eine Konsolenanwendung, weshalb die Verwendung von Environment.Exit(1)
mit einem Exit-Code von 1.
Anschauliches Beispiel:
<code class="language-csharp">if (System.Windows.Forms.Application.MessageLoop) { System.Windows.Forms.Application.Exit(); } else { System.Environment.Exit(1); }</code>
Weiterführende Literatur:
Das obige ist der detaillierte Inhalt vonSo beenden Sie C#-Anwendungen ordnungsgemäß: Application.Exit vs. Environment.Exit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!