Dependency Walker--Depends.exe 分析dll的链接

Dependency Walker是一个免费的实用程序,可扫描任何32位或64位Windows模块(exe,dll,ocx,sys等),并构建所有从属模块的层次树状图。对于找到的每个模块,它列出了该模块导出的所有功能,以及其他模块实际上正在调用的功能。另一个视图显示最少的必需文件集,以及有关每个文件的详细信息,包括文件的完整路径,基地址,版本号,计算机类型,调试信息等。

Dependency Walker对解决与加载和执行模块有关的系统错误也非常有用。Dependency Walker检测到许多常见的应用程序问题,例如缺少模块,无效模块,导入/导出不匹配,循环依赖项错误,模块的机器类型不匹配以及模块初始化失败。

Dependency Walker在Windows 95、98,Me,NT,2000,XP,2003,Vista,7和8上运行。它可以处理任何32位或64位Windows模块,包括为Windows CE设计的模块。它可以作为图形应用程序或控制台应用程序运行。依赖性Walker处理所有类型的模块依赖性,包括隐式,显式(动态/运行时),转发,延迟加载和注入。包括详细的帮助。

下载地址:http://www.dependencywalker.com/

使用方法

1. 双击depends.exe ,运行该程序。
2. 将可执行文件拖到该窗口中。稍等片刻,出现depends 分析结果。


3. 左侧的树控件,显示了该exe 包含哪些module(dll),下面的列表是可能用到的dll 总表。因为子dll又包含孙dll, 孙dll又包含... 总之dll 不超过这么多了。不过这个列表用途不大。


4.点击树形控件的子dll,在又测得两个窗口中有相应的信息。上面窗口为导入表列表最后一下entry Point 往往写着not found. 是因为hint 值与下面导出表的hint,function 不一致。不过这没有关系。因为导入表hint 是用的链接时开发环境的dll, 而现在导出表是你系统中正使用的dll, 不一致也正常,反正运行时是根据dll函数名称进行定位的。

其中下面的窗口显示的是该dll 的导出信息。如ordinal,hint,funtion-name,entry-point 等,

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值