typedef struct _KDHELP {
DWORD Thread; // 线程ID
DWORD ThCallbackStack; // 用于 x86 架构的线程回调堆栈
DWORD ThCallbackBStore; // 用于 x86 架构的线程回调后备存储
DWORD NextCallback; // 用于 x86 架构的下一个回调地址
DWORD FramePointer; // 用于 x86 架构的帧指针
DWORD KiCallUserMode; // 用于 x86 架构的KiCallUserMode地址
DWORD KeUserCallbackDispatcher; // 用于 x86 架构的KeUserCallbackDispatcher地址
DWORD SystemRangeStart; // 用于 x86 架构的SystemRangeStart地址
DWORD KiUserExceptionDispatcher; // 用于 x86 架构的KiUserExceptionDispatcher地址
DWORD StackBase; // 栈基址
DWORD StackLimit; // 栈限制
DWORD Reserved[5];
} KDHELP, *PKDHELP;
这个结构体包含以下字段:
- Thread: 线程ID。
- ThCallbackStack: 用于 x86 架构的线程回调堆栈。
- ThCallbackBStore: 用于 x86 架构的线程回调后备存储。
- NextCallback: 用于 x86 架构的下一个回调地址。
- FramePointer: 用于 x86 架构的帧指针。
- KiCallUserMode: 用于 x86 架构的 KiCallUserMode 地址。
- KeUserCallbackDispatcher: 用于 x86 架构的 KeUserCallbackDispatcher 地址。
- SystemRangeStart: 用于 x86 架构的 SystemRangeStart 地址。
- KiUserExceptionDispatcher: 用于 x86 架构的 KiUserExceptionDispatcher 地址。
- StackBase: 栈基址。
- StackLimit: 栈限制。
- Reserved: 保留字段。
这个结构体通常在内核调试的上下文中使用,用于获取有关内核调试助手的信息。在一些调试和异常处理的情况下,这个结构提供了有关线程和栈的信息,帮助进行调试和故障定位。
转载请注明出处:http://www.zyzy.cn/article/detail/26398/Win32 API/Dbghelp.h/KDHELP