Neustarten von C#-WinForm-Anwendungen mit Application.Restart()
Beim Entwickeln einer C# .NET 2.0-WinForm-Anwendung müssen Sie möglicherweise schließen und starten Sie die Anwendung neu. Obwohl Application.Restart() für diesen Zweck gedacht ist, hat es sich als unzuverlässig erwiesen.
Alternative Methode zum Neustarten von Anwendungen
Ein effektiverer Ansatz ist die Kombination Application.Restart() mit Environment.Exit(0):
Application.Restart(); Environment.Exit(0);
Dies Ansatz:
Application.Restart() versucht, zu beenden und dann zu starten eine neue Instanz der Anwendung, sie kann jedoch zurückkehren, bevor die Prozesse abgeschlossen sind. Environment.Exit(0) beendet den Prozess sofort und verhindert so Störungen durch Event-Handler. Dadurch entsteht ein kurzer Zeitraum, in dem beide Prozesse gleichzeitig ausgeführt werden. Für die meisten Anwendungen stellt dies jedoch kein Problem dar.
Bedeutung des Exit-Codes
In Environment.Exit(0) , der Exit-Code 0 zeigt ein sauberes Herunterfahren an. Sie können auch einen Exit-Code von 1 verwenden, um anzuzeigen, dass ein Fehler aufgetreten ist.
Das obige ist der detaillierte Inhalt vonWarum ist „Application.Restart()' unzuverlässig und wie kann ich eine C#-WinForms-Anwendung zuverlässig neu starten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!