Lorsque je lance mon application et que j'appuie sur le bouton «X» de mon application, ou sur le bouton Quitter qui se déploie: me.close Il ne fermera pas complètement l'application. Comme l'instance est toujours en cours d'exécution dans Visual Studio ou si vous allez dans les processus du gestionnaire de tâches, vous pouvez toujours le voir. Comment ferais-je cela pour fermer?L'application VB.NET ne se ferme pas complètement
Répondre
Une possibilité est que vous ayez des threads en dehors du thread principal en cours d'exécution, et ce ne sont pas des threads d'arrière-plan. En général, essayez de le déboguer: attachez-le à partir de VS, et utilisez le bouton Pause pour le casser, et regardez quels threads sont là, et ce qu'ils font.
Si le ou les threads s'exécutent dans l'application, définissez la propriété IsBackground
sur True
.
Thread.IsBackground Property sur MSDN
Remarques
Un fil est soit un fil de fond ou d'un fil de premier plan. Contexte les fils sont identiques aux fils d'avant-plan , sauf que les fils de fond n'empêchent pas un processus de de se terminer. Une fois que tous les threads d'avant-plan appartenant à un processus ont terminé , le langage commun runtime met fin au processus. Les threads d'arrière-plan restants sont arrêtés et ne se terminent pas.
Le mot clé "End" est ce que vous cherchez.
Mettez-le dans l'événement FormClosed.
- 1. .NET StreamReader ne se ferme pas
- 2. VB.NET Me.Close() ne fonctionne pas, le formulaire ne se ferme pas?
- 3. glade aboutDialog ne se ferme pas
- 4. L'application Winform ne se ferme pas
- 5. Socket ne se ferme pas correctement
- 6. Fond ne remplissant pas complètement
- 7. jQuery Fancy - la fenêtre popup ne se développe pas complètement
- 8. fichier audio Android ne joue pas complètement, brutalement interupted se
- 9. Pages ne se chargeant pas complètement/correctement quelques fois
- 10. La boîte de dialogue Facebook Connect ne se ferme pas
- 11. Le processus ne se ferme pas après l'ajout de l'écouteur
- 12. UIImagePickerController ne se ferme pas après l'avertissement de mémoire
- 13. Le menu contextuel XAML ne se ferme pas
- 14. L'application Prism ne se ferme pas lorsqu'elle est fermée
- 15. Qt, le dialogue non-modal ne se ferme pas
- 16. La fenêtre du programme débogué ne se ferme pas
- 17. Socket ne se ferme pas lors de l'appel socket.close()
- 18. Javamail ne ferme pas complètement la socket au moment de l'expiration
- 19. Les iframe se ferme (via onclick = "self.parent.tb_remove();) dans Firefox et IE7, mais il ne se ferme pas dans Chrome
- 20. NSStream se ferme
- 21. MPMoviePlayerViewController se ferme inopinément
- 22. Socket se ferme automatiquement
- 23. VBA "ThisWorkbook.Close" Ne ferme pas ce classeur!
- 24. L'image de fond ne s'étire pas complètement
- 25. L'applet Java ne récupère pas complètement les ordures à proximité
- 26. WebSocket se ferme sur l'envoi
- 27. VB.Net - "Avec" et les fermetures ne se mélangent pas
- 28. Le programme vb.net ne peut pas se connecter à wampserver
- 29. Chaîne.translate() de Python ne fonctionne pas complètement?
- 30. Pourquoi ma console ne ferme-t-elle pas avant qu'un événement "fenêtre" ne se produise?
Je veux dire, y a-t-il un moyen rapide et facile de résoudre ce problème, en mettant fin à tout le processus au lieu de passer par tout ce creusement? – lab12
La seule façon de le réparer est de trouver ce qui ne va pas. Si vous avez encore un thread en cours d'exécution, l'arrêt du processus sans tenir compte de ce thread peut entraîner une perte de données (par exemple si vous écrivez dans un fichier à ce moment-là) et d'autres effets secondaires désagréables. Cela dit, si ce que vous voulez est un _hack_ plutôt que de corriger, alors 'Environment.Exit()' sur le thread principal va fermer tous les threads en cours d'exécution, puis le processus. –