WdbgExts 符号

本主题简要概述了如何使用 WdbgExts API 操作符号。 有关在调试器引擎中使用符号的概述,请参阅本文档调试器引擎概述部分中的符号

若要计算 MASM 或 C++ 表达式,请使用 GetExpressionGetExpressionEx 函数。

若要读取结构中成员的值,请使用 GetFieldData 函数,或者,如果该成员包含基元值,则可以使用 GetFieldValue 。 若要确定目标内存中某个符号实例的大小,请使用 GetTypeSize 函数。

若要在 结构中查找成员的偏移量,请使用 GetFieldOffset 函数。

若要读取结构中的多个成员,请先使用 InitTypeRead 函数初始化结构。 然后,可以使用 ReadField 函数一次读取一个大小小于或等于 8 字节的成员。 对于物理内存中的结构地址,请使用 InitTypeReadPhysical 函数而不是 InitTypeRead

有两个函数可用于循环访问链接列表。 对于使用 LIST_ENTRY32 或 LIST_ENTRY64 结构的双链接列表,可以使用 函数 ReadListEntry 查找下一个和上一个条目。 函数 ListType 将循环访问链接列表中的所有条目,并为每个条目调用回调函数。

若要在目标内存中查找指定地址附近的符号,请使用 GetSymbol 函数。

若要从调试器引擎的缓存中删除所有符号信息,请使用 ReloadSymbols 函数。 若要读取或更改用于搜索符号文件的符号路径,请使用 GetSetSympath 函数。

调试器引擎提供的几乎所有符号操作都可以使用 Ioctl 操作 IG_DUMP_SYMBOL_INFO执行。 但是,虽然它是一个非常灵活的函数,但它是高级函数,我们建议你使用上述更简单的函数(如果适用)。

其他信息

有关功能更强大的符号 API,请参阅本文档的使用调试器引擎 API 部分中的使用符号。