Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

CoqBlog

.NET is good :-)
{ Blog de coq }

Actualités

A propos des notifications d’exceptions non gérées - 5 - Les interactions entre les différents évènements

Cet article est composé de plusieurs parties :

 

Les interactions entre System.Windows.Forms.Application.ThreadException (WinForms) et AppDomain.UnhandledException

Dans une application Windows Forms, si vous utilisez conjointement Application.ThreadException et AppDomain.UnhandledException (sur le même domaine d’application), UnhandledException ne sera en gros levé que pour les exceptions pour lesquelles ThreadException ne l’a pas été mais pas forcément pour toutes ces dernières : UnhandledException ne sera pas levé si jamais la boite de dialogue “Continuer/Quitter” citée en partie 3 - Zoom sur Application.ThreadException (WinForms) apparait.

En reprenant le tableau décrivant le comportement de Application.ThreadException :

TE = Application.ThreadException
UE = AppDomain.UnhandledException

Tableau décrivant les intéractions entre Application.ThreadException et AppDomain.UnhandledException

Le diagramme ci-dessous devrait donner une vue plus claire de la chose (cliquez sur l’image pour l’avoir en taille réelle) :

Les interactions entre System.Windows.Forms.Application.ThreadException (WinForms) et AppDomain.UnhandledException

 

 

Les interactions entre System.Windows.Application.DispatcherUnhandledException / System.Windows.Threading.Dispatcher.UnhandledException (WPF) et AppDomain.UnhandledException

Dans une application WPF, si vous utilisez conjointement Application.DispatcherUnhandledException/Dispatcher.UnhandledException et AppDomain.UnhandledException, la règle est à ma connaissance assez simple : si vous déclarez le problème comme étant géré dans le gestionnaire d’évènement Application.DispatcherUnhandledException/Dispatcher.UnhandledException, AppDomain.UnhandledException ne sera pas levé.
Dans le cas contraire il le sera (et l’application se terminera, sauf si la propriété UnhandledExceptionEventArgs.IsTerminating indique le contraire).

Le diagramme est cette fois-ci assez clair (cliquez sur l’image pour l’avoir en taille réelle) :

Les interactions entre System.Windows.Application.DispatcherUnhandledException / System.Windows.Threading.Dispatcher.UnhandledException (WPF) et AppDomain.UnhandledException

 

 

La suite : 6 - Notes diverses et conclusion

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: dimanche 26 octobre 2008 13:01 par coq
Classé sous : , ,

Commentaires

Lutinore a dit :

Nan mais ce mal de tête que j'ai après voir tenté de comprendre le 1er diagramme lol.

# janvier 22, 2009 21:54

coq a dit :

Je ne vois vraiment pas pourquoi :p

Je ne sais pas trop comment le rendre plus humain celui là :-(

# janvier 24, 2009 09:19
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [WCF] Forcer des réponses JSon, même pour des requêtes XML par Blog de Jérémy Jeanson le il y a 7 heures et 10 minutes

- [MVC] Plusieurs verbes pour une seule méthode du controller par Blog de Jérémy Jeanson le 05-29-2015, 14:08

- SPS Paris 2015 – Back from MS Ignite par Le blog de Patrick [MVP Office 365] le 05-26-2015, 16:04

- Windows 10 IOT– exploitez vos capteurs en tout genre ! par Blog de Daniel TIZON [daniel] le 05-26-2015, 08:06

- SharePoint Saturday Paris 2015 c’est le 30 mai ! par Le blog de Patrick [MVP Office 365] le 05-25-2015, 21:07

- Configurer un écran 5 pouces 800x480 pour Raspberry Pi2 sous Windows 10 IOT par Blog de Daniel TIZON [daniel] le 05-22-2015, 07:52

- Office 365 : Sway est disponible en preview par Le petit blog de Pierre / Pierre's little blog le 05-21-2015, 22:24

- Première installation de Raspbian sur RASPBERRY Pi 2 par Blog de Daniel TIZON [daniel] le 05-14-2015, 22:17

- Mobile Day : c’est le 25 et c’est chez Microsoft! par Fathi Bellahcene le 05-13-2015, 23:48

- TFS 2013 : Migration d’une ferme TFS 2010 vers 2013 sans upgrade par Blog Technique de Romelard Fabrice le 05-01-2015, 16:28