Hello,
Comment forcer la fermeture de l'application ?
J'essaye d'utiliser Application.Exit(), mais cela n'a aucun effet.
Hello,
Comment forcer la fermeture de l'application ?
J'essaye d'utiliser Application.Exit(), mais cela n'a aucun effet.
Voici une méthode un peu barbare, mais elle a fait ses preuves :
using System.Diagnostics;
Process.GetCurrentProcess().Kill();
Cette méthode "static" de la classe Process stoppe purement et simplement le processus en cours, c'est-à-dire ton application.
Tu peux essayer aussi close() de la fenetre principale
Avant d'utiliser des méthodes barbares je pense qu'il faudrait se poser des questions...
Si le Application.Exit ne fonctionne pas c'est qu'il y a un processus actif, il faut donc chercher celui-ci ou le composant qui n'a pas été disposé.
Pensez aux règles et au qui rime avec !
Quand je lance mon appli depuis Visual, ça ne crée pas du tout de processus...
Ca vient peut-être de là, le problème : mon appli ne serait alors qu'un thread de VS ?....
Je ne peux pas vérifier avec VS2005 mais avec VS2003 ça lance bien un processus distinct de celui de VS.
Tu instancies des objets, classes ou dll dans ton projet ?
Pensez aux règles et au qui rime avec !
this.Close(); sur le formulaire principal de ton application devrait aussi le faire se fermer...
Thomas LEBRUN: MCAD.NET, MCTS (Win et Web), MCPD(Win et Web) & Microsoft MVP Client Application Development
WPF par la pratique, mon livre sur WPF ! (également disponible ici ou là)
A la découverte de .NET
Ils sont bien tous disposés et définis à nothing au moment de la fermeture ?
Et il n'y à plus aucune fonction qui tourne dans une des classes ?
C'est peut-être bête mais j'avais un truc dans le genre qui m'a fais m'arracher les cheveux...
Pensez aux règles et au qui rime avec !
Euh.. Non.
Je croyais que c'était le ramasse-miettes qui s'en occupait, dans ces cas là ?
Normalement
Je ne sais pas pour le frameWork 2 mais pour le 1.1 ce n'est pas vraiment le cas...
Quand je suis arrivé dans le domaine on m'a expliqué que le GC c'est une sorte de médecin de la dernière chance et comme on dit il vaut mieux prévenir que guérir....
Pensez aux règles et au qui rime avec !
j'ai lu dans l'excellent livre de P. SMACCHIA dédié à .net 2 que la méthode statique System.Environment.Exit(int) permettait de terminer une application de façon ... nette !
ex : using System;
Environment.Exit(0); // 0 : code de retour pour windows
Je l'ai testée avec succés.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager