Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Exception non gérée sérialisée ?

1 réponse
Avatar
ShadowFil
Bonjour,

Quand une exception n'est pas gérée dans une application, elle est
interceptée par la CLR (ou Windows ?). Le mécanisme qui affiche l'erreur se
trouve t-il dans un autre domaine d'application que celui de l'application ?

En fait, je voudrais créer une application console très simple pour tester
la sérialisation d'une nouvelle exception. Si je génère une exeption
personnalisée que je n'intercepte pas, est-ce qu'elle est sérialisée,
c'est-à-dire, est-ce qu'elle change de domaine d'application ?

Sinon, comment tester le plus simplement possible la sérialisation des
exceptions ?

Merci pour votre aide.

1 réponse

Avatar
Simon Mourier [MS]
Il est recommandé de marquer les exceptions comme serialisables de toutes
façons

[Serializable]
public class MyException: ApplicationException
{
...
}

La façon dont une exception est gérée dépend d'un certain nombre de
paramètres, et en final, cela dépend du programme de debug configuré au
niveau Windows (je ne saurais me prononcer sur d'autres plateformes ROTOR,
Mono, ...). Donc ca peut varier d'un Windows à un autre, de si on a installé
Visual Studio, ou d'autres outils de debugging.

Si on fait des Winforms, et qu'on utilise l'objet Application, c'est
différent aussi. On peut enfin créer son propre gestionnaire.

Pour tester si une exception est bien sérialisée, on peut l'utiliser dans un
WebService par exemple.

plus d'infos:
http://haacked.com/archive/2004/02.aspx
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemapplicationexceptionclasstopic.asp
http://dotnetjunkies.com/WebLog/chris.taylor/archive/2004/01/10/5441.aspx
Simon.


"ShadowFil" a écrit dans le message de
news:
Bonjour,

Quand une exception n'est pas gérée dans une application, elle est
interceptée par la CLR (ou Windows ?). Le mécanisme qui affiche l'erreur
se
trouve t-il dans un autre domaine d'application que celui de l'application
?

En fait, je voudrais créer une application console très simple pour tester
la sérialisation d'une nouvelle exception. Si je génère une exeption
personnalisée que je n'intercepte pas, est-ce qu'elle est sérialisée,
c'est-à-dire, est-ce qu'elle change de domaine d'application ?

Sinon, comment tester le plus simplement possible la sérialisation des
exceptions ?

Merci pour votre aide.