Condividi tramite


Struttura MDAInfo

Fornisce dettagli sull'evento Event_MDAFired, che genera la creazione di un assistente al debug gestito (MDA, Managed Debugging Assistant).

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

Membri

Membro

Descrizione

lpMDACaption

Titolo dell'assistente al debug gestito corrente. Il titolo descrive il tipo di errore che ha generato l'evento Event_MDAFired.

lpMDAMessage

Messaggio di output fornito dall'assistente al debug gestito corrente.

Note

Gli assistenti al debug gestito sono strumenti di debug che operano insieme a Common Language Runtime (CLR) per eseguire attività quali l’identificazione di condizioni non valide nel motore di esecuzione del runtime o per effettuare il dump di informazioni aggiuntive sullo stato del motore. Tali assistenti generano messaggi XML su eventi che altrimenti sarebbero difficili da rilevare e sono particolarmente utili per eseguire il debug di transizioni tra codice gestito e non gestito.

Quando viene generato un evento che determina la creazione di un assistente al debug gestito, il runtime esegue le operazioni descritte di seguito:

  • Se l'host non ha registrato un'istanza di IActionOnCLREvent, chiamando ICLROnEventManager::RegisterActionOnEvent per ricevere notifica di un evento Event_MDAFired, viene applicato il comportamento predefinito non di hosting del runtime.

  • Se l'host ha registrato un gestore per l'evento, il runtime verifica se al processo è connesso un debugger. In caso affermativo, passa al debugger. Quando il debugger continua, esegue una chiamata all'host. Se non è connesso alcun debugger, il runtime chiama IActionOnCLREvent::OnEvent e passa un puntatore a un'istanza di MDAInfo come parametro data.

L'host può scegliere di attivare assistenti al debug gestito e di ricevere notifica ogni volta che ne viene attivato uno. Questo consente all'host di ignorare il comportamento predefinito e di interrompere il thread gestito che ha generato l'evento per evitare che comprometta lo stato del processo. Per ulteriori informazioni sull'utilizzo degli assistenti al debug gestito, vedere Diagnostica degli errori tramite gli assistenti al debug gestito.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.idl

Libreria: inclusa come risorsa in MSCorEE.dll

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vedere anche

Concetti

Diagnostica degli errori tramite gli assistenti al debug gestito

Altre risorse

Strutture di hosting