我正在尝试使用IDA pro加载dll的符号。 DBGTOOLS = "C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x86\"以便改为放置WinDbg文件夹之一。

问题是,如果我加载dll,我看不到任何符号并得到此错误消息:

无法从服务器获取符号。但是,我使用可以在msdnaa帐户上下载的符号手动加载一些符号。问题是我有几个不同版本的d2d1.dll。我的符号用于刚安装完操作系统后出现的dll。当我更新操作系统,然后删除一些特定的更新以便对diff dll进行更改时,我的符号不再是正确的符号。

我做错了什么?如何获得每个版本的正确符号?

#1 楼

我终于解决了我的问题。

DIA代表“调试接口访问”,并且是用于正确读取PDB文件的组件。

所使用的msdia90.dll似乎尚未随VS 2013可再发行文件一起安装。

我必须安装2008可再发行文件才能获取正确的dll。

由于http://download.tuxfamily.org/overclokblog/PDB%20ain%27t%20PDD/0vercl0k_pdb_aint_pdd.pdf我解决了我的问题

评论


IDA非常愚蠢,因为它不知道如何使用Visual Studio 2017、2019等随附的最新DIA SDK。它绝对需要VS 2008 redist随附的旧版本microsoft.com/zh-CN/download/确认.aspx?id = 15336

–西蒙·穆里尔(Simon Mourier)
7月17日15:54