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.