IDebugEventContextCallbacks 接口 (dbgeng.h)
此接口包含 一个DEBUG_EVENT_CONTEXT结构 ,作为每个事件回调的“context”参数。 上下文结构包含“ProcessEngineId”、“ThreadEngineId”和“FrameEngineId”。 例如,对于断点事件等事件回调,它提供断点命中哪个进程/线程的信息,而无需对引擎执行其他调用。
此接口支持事件上下文回调,并替换 IDebugClient::SetEventCallbacks 方法的使用。
使用 IDebugClient6::SetEventContextCallbacks 方法在调试器客户端上设置此接口。
继承
IDebugEventContextCallback 接口继承自 IUnknown 接口。 IDebugEventContextCallback 也具有以下类型的成员:
方法
IDebugEventContextCallbacks 接口具有这些方法。
IDebugEventContextCallbacks::Breakpoint 收到断点异常并可以映射到现有断点时,会生成断点事件。 |
IDebugEventContextCallbacks::ChangeDebuggeeState 调试对象状态(如寄存器或数据空间)已更改。 |
IDebugEventContextCallbacks::ChangeEngineState 引擎状态已更改。 |
IDebugEventContextCallbacks::ChangeSymbolState 符号状态已更改。 |
IDebugEventContextCallbacks::CreateProcess 当目标中发生 create-process 调试事件时,引擎将调用 IDebugEventContextCallbacks::CreateProcess 回调方法。 |
IDebugEventContextCallbacks::CreateThread 当目标中发生 create-threaddebugging 事件时,引擎将调用 IDebugEventContextCallbacks::CreateThread 回调方法。 |
IDebugEventContextCallbacks::Exception 当目标中发生异常调试事件时,引擎将调用 IDebugEventContextCallbacks::Exception 回调方法。 |
IDebugEventContextCallbacks::ExitProcess 当目标中发生退出进程调试事件时,引擎将调用 IDebugEventContextCallbacks::ExitProcess 回调方法。 |
IDebugEventContextCallbacks::ExitThread 当目标中发生退出线程调试事件时,引擎将调用 IDebugEventContextCallbacks::ExitThread 回调方法。 |
IDebugEventContextCallbacks::GetInterestMask 为客户端设置事件回调时,引擎将调用 GetInterestMask 一次。 |
IDebugEventContextCallbacks::LoadModule 当目标中发生模块加载调试事件时,引擎将调用 IDebugEventContextCallbacks::LoadModule 回调方法。 |
IDebugEventContextCallbacks::QueryInterface 标准 COM QueryInterface 方法。 |
IDebugEventContextCallbacks::Release 标准 COM 发布方法。 |
IDebugEventContextCallbacks::SessionStatus 会话状态与其他等待回调一样是同步的,但它被调用,因为会话的状态正在更改,而不是在特定事件,因此其返回值不会影响等待。 |
IDebugEventContextCallbacks::SystemError 当目标中发生系统错误时,引擎将调用 SystemError 回调方法。 此方法属于 IDebugEventContextCallbacks。 |
IDebugEventContextCallbacks::UnloadModule 当目标中发生模块卸载调试事件时,引擎将调用 IDebugEventContextCallbacks::UnloadModule 回调方法。 |
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | dbgeng.h (包括 Dbgeng.h) |