IDebugEventCallback2::Event

发送调试事件的通知。

语法

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

参数

pEngine
[in]一个 IDebugEngine2 对象,该对象表示正在发送此事件的调试引擎 (DE)。 需要 DE 才能填写此参数。

pProcess
[in]一个 IDebugProcess2 对象,该对象表示事件发生的进程。 此参数由会话调试管理器(SDM)填充。 DE 始终传递此参数的 null 值。

pProgram
[in]一个 IDebugProgram2 对象,该对象表示发生此事件的程序。 对于大多数事件,此参数不是 null 值。

pThread
[in]一个 IDebugThread2 对象,该对象表示发生此事件的线程。 对于停止事件,此参数不能为 null 值,因为堆栈帧是从此参数获取的。

pEvent
[in]一个 表示调试事件的 IDebugEvent2 对象。

riidEvent
[in]用于标识要从参数获取的事件接口的 pEvent GUID。

dwAttrib
[in]EVENTATTRIBUTES 枚举中的标志的组合。

返回值

如果成功,则返回 S_OK;否则,返回错误代码。

备注

调用此方法时,参数dwAttrib必须与 GetAttributes 方法返回的值匹配,如在参数中pEvent传递的事件对象调用。

无论事件本身是否是异步的,所有调试事件都以异步方式发布。 当 DE 调用此方法时,返回值不指示是否已处理事件,仅指示是否收到该事件。 事实上,在大多数情况下,此方法返回时尚未处理该事件。

另请参阅