来自PDB的AST(例如通过DIA)

AST from PDB (e.g. via DIA)

本文关键字:DIA PDB AST 来自      更新时间:2023-10-16

我目前正在使用DIA SDK从PDB文件中获取一些非常有用的信息。。。现在,最基本的问题是:我能深入到什么程度?最佳的方法是能够将所有内容直接归结为抽象语法树。。。这可能吗?如果没有,我可以使用调试数据的分析走多远?

DIA SDK只允许您通过COM接口访问PDB中可用的调试信息。为了给您一个大致的想法,这类似于visualstudio调试器可用的任何东西(符号、行号等)。这意味着,一般来说,如果调试器似乎知道一些信息,那么这些信息应该可以通过DIA SDK获得。有关具体细节,您需要参考msdn中的联机文档。

具体地说,Visual Studio的抽象语法树不能通过任何api获得,而不仅仅是DIA SDK。即使是局部变量类型的符号也无法通过DIA SDK枚举。

获取我的VC++代码使用的符号列表