Résiliation gracieuse des applications C#
La fermeture correcte des applications C# est cruciale pour la stabilité des applications. Cet article aborde le problème courant des applications qui ne s'arrêtent pas complètement après la fermeture du formulaire principal.
Application.Exit
contre Environment.Exit
Il existe deux méthodes principales pour terminer les applications C# : Application.Exit
et Environment.Exit
. Application.Exit
est généralement préféré pour les applications Windows Forms lancées avec Application.Run
, tandis que Environment.Exit
est plus approprié pour les applications console.
Gestion FormClosed
et FormClosing
Événements
Lors de l'utilisation d'événements FormClosed
ou FormClosing
pour gérer la fermeture du formulaire, l'utilisation de this.Hide()
peut empêcher la sortie correcte de l'application. Utilisez this.Close()
ou System.Windows.Forms.Application.Exit()
pour garantir l'arrêt complet de l'application.
Utiliser la propriété MessageLoop
Pour sélectionner la méthode de terminaison correcte, examinez la propriété System.Windows.Forms.Application.MessageLoop
. Une valeur de true
indique une application Windows Forms en cours d’exécution, nécessitant l’utilisation de Application.Exit
. À l’inverse, une valeur false
signifie une application console, recommandant l’utilisation de Environment.Exit(1)
avec un code de sortie de 1.
Exemple illustratif :
<code class="language-csharp">if (System.Windows.Forms.Application.MessageLoop) { System.Windows.Forms.Application.Exit(); } else { System.Environment.Exit(1); }</code>
Lectures complémentaires :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!