首页
社区
课程
招聘
[求助]IDA6.1不能自动下载MS的符号文件?
发表于: 2012-3-15 11:40 11333

[求助]IDA6.1不能自动下载MS的符号文件?

2012-3-15 11:40
11333
IDA6.1不能自动下载MS的符号文件?从看雪论坛下的版本
有symsrv.yes文件了啊

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 4560
活跃值: (1002)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
需要一个环境变量_NT_SYMBOL_PATH
SRV*E:\symbols*http://msdl.microsoft.com/download/symbols/
本机路径自己修改
2012-3-15 13:35
0
雪    币: 1233
活跃值: (907)
能力值: ( LV12,RANK:750 )
在线值:
发帖
回帖
粉丝
3
按照网上这个办法搞定了,呵呵
http://hi.baidu.com/vexs/blog/item/9a35e3604c0717c58db10daa.html

IDA Pro自5.2后的版本在加载Symbols符号文件的时候有些小小的意外,默认加载竟不成功。
网上的解决方法是从5.1的plugins下拷出pdb.plw和pdb.p64来替换5.2本身的,确实可行。

想把Symbols包保存在本地加载很简单,先去microsoft网站上下载相应的Symbols包:
http://msdn.microsoft.com/en-us/windows/hardware/gg463028

然后解压安装在任意位置,比如D:\symbols,然后修改cfg\pdb.cfg:
PDBSYM_DOWNLOAD_PATH    = "D:\\symbols";

然而,现在IDA6.1都出来了,再用5.1的那个pdb.plw有点说不过去了,即使按上述方法依然可行。

如果不想要5.1的那个pdb.plw,默认情况下在尝试加载symbols包时可能会出现以下提示:

PDB: could not process file C:\WINDOWS\NOTEPAD.EXE with DIA: 不支持此接口

这里出现的DIA是指Microsoft Debug Interface Access,看来是缺少DIA SDK组件。

在IDA6.1的plugins\pdb.plw中有这样的描述:
The PDB file should be in the same directory as the input file Load debug information from a PDB file msdia71.dll msdia80.dll msdia90.dll

msdia*.dll这些库文件是安装了Visual Studio才带有的,我没有装VS,所以报了这提示。
知道原因就简单了,拷了一个msdia90.dll到%windir%\system32目录下或是其他任意目录下,
如果是拷到非%windir%\system32以外的目录需要手动注册才能加载:regsvr32 msdia90.dll
当成功加载DIA后,会显示出DIA的版本信息:

PDB: using DIA dll "C:\WINDOWS\system32\msdia90.dll"
PDB: DIA interface version 9.0

msdia*.dll在安装有VS的机器上的以下目录可以找到(网上也有下载):
X:\Program Files\Microsoft Visual Studio 9.0\Common7\Packages\Debugger\
X:\Program Files\Common Files\Microsoft Shared\VC\

但在分析一些非系统自带的exe时会出现另一些无法识别函数的提示:
PDB: DIA interface version 9.0
PDB: could not process file D:\Test.exe with DIA: Failed to open the file, or the file has an invalid format (E_PDB_NOT_FOUND)

这个就有点麻烦了。
2012-3-15 15:49
0
雪    币: 103
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
mark this msg
2012-12-15 04:01
0
游客
登录 | 注册 方可回帖
返回
//