Condividi tramite


IDebugEventCallback2::Event

Invia la notifica degli eventi di debug.

Sintassi

int Event( 
   IDebugEngine2  pEngine,
   IDebugProcess2 pProcess,
   IDebugProgram2 pProgram,
   IDebugThread2  pThread,
   IDebugEvent2   pEvent,
   ref Guid       riidEvent,
   uint           dwAttrib
);

Parametri

pEngine
[in] Oggetto IDebugEngine2 che rappresenta il motore di debug (DE) che invia questo evento. Per compilare questo parametro, è necessario un DE.

pProcess
[in] Oggetto IDebugProcess2 che rappresenta il processo in cui si verifica l'evento. Questo parametro viene compilato dal gestore di debug della sessione (SDM). Un oggetto DE passa sempre un valore Null per questo parametro.

pProgram
[in] Oggetto IDebugProgram2 che rappresenta il programma in cui si verifica questo evento. Per la maggior parte degli eventi, questo parametro non è un valore Null.

pThread
[in] Oggetto IDebugThread2 che rappresenta il thread in cui si verifica questo evento. Per gli eventi di arresto, questo parametro non può essere un valore Null perché lo stack frame viene ottenuto da questo parametro.

pEvent
[in] Oggetto IDebugEvent2 che rappresenta l'evento di debug.

riidEvent
[in] GUID che identifica l'interfaccia pEvent evento da ottenere dal parametro .

dwAttrib
[in] Combinazione di flag dell'enumerazione EVENTATTRIBUTES .

Valore restituito

Se ha esito positivo, restituisce S_OK; in caso contrario, restituisce un codice di errore.

Osservazioni:

Quando si chiama questo metodo, il dwAttrib parametro deve corrispondere al valore restituito dal metodo GetAttributes come chiamato sull'oggetto evento passato nel pEvent parametro .

Tutti gli eventi di debug vengono registrati in modo asincrono, indipendentemente dal fatto che un evento stesso sia asincrono o meno. Quando un DE chiama questo metodo, il valore restituito non indica se l'evento è stato elaborato, solo se l'evento è stato ricevuto. In realtà, nella maggior parte dei casi, l'evento non è stato elaborato quando termina questo metodo.

Vedi anche