Partager via


MDAInfo, structure

Fournit des détails sur l’événement Event_MDAFired, qui déclenche la création d’un Assistant Débogage managé (MDA).

Syntaxe

typedef struct _MDAInfo {  
    LPCWSTR  lpMDACaption;  
    LPCWSTR  lpMDAMessage  
} MDAInfo;  

Membres

Membre Description
lpMDACaption Titre du MDA actuel. Le titre décrit le type d’échec qui a déclenché l’événement Event_MDAFired.
lpMDAMessage Message de sortie fourni par le MDA actuel.

Notes

Les Assistants Débogage managé (MDA) sont des aides au débogage qui fonctionnent conjointement avec le Common Language Runtime (CLR) pour effectuer des tâches comme l’identification des conditions non valides dans le moteur d’exécution du runtime ou le vidage d’informations supplémentaires sur l’état du moteur. Les MDA génèrent des messages XML sur des événements qui seraient difficiles à intercepter sans eux. Ces messages s’avèrent être particulièrement utiles lors du débogage des transitions entre le code managé et non managé.

Le runtime effectue les étapes suivantes quand un événement qui déclenche la création d’un MDA se produit :

  • Si l’hôte n’a pas inscrit une instance IActionOnCLREvent en appelant ICLROnEventManager::RegisterActionOnEvent pour être notifié d’un événement Event_MDAFired, le runtime continue avec son comportement par défaut non hébergé.

  • Si l’hôte a inscrit un gestionnaire pour cet événement, le runtime vérifie si un débogueur est attaché au processus. Le cas échéant, le runtime arrête le débogueur. Quand le débogueur continue, il appelle l’hôte. Si aucun débogueur n’est attaché, le runtime appelle IActionOnCLREvent::OnEvent et passe un pointeur à une instance MDAInfo sous forme de paramètre data.

L’hôte peut choisir d’activer des MDA et d’être notifié quand un MDA est activé. Cela permet à l’hôte de remplacer le comportement par défaut et d’abandonner le thread managé qui a déclenché l’événement, afin de l’empêcher d’endommager l’état du processus. Pour plus d’informations sur l’utilisation de MDA, consultez Diagnostic des erreurs avec les Assistants Débogage managé.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.idl

Bibliothèque : Incluse en tant que ressource dans MsCorEE.dll

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi