完美真人·(中国APP)官方网站

首 页
手机版

Dependency Walker绿色版 v2.2.6000官方版

PE模块依赖性分析工具

Dependency Walker是一款专业的App和程序依赖性分析工具,可以扫描任何32位或64位的Windows模块,如exe,dll,ocx,sys等文件,并支撑构建所有相关模块的分层树形图,可帮助用户解决与加载和实行模块相关的系统错误。

另外,Dependency Walker功能丰富多样,主要功能如下:查看PE模块的导入模块;查看PE模块的导入和导出函数;动态剖析 PE 模块的模块依赖性;解析C++函数名称。有需要的朋友欢迎免费下载使用。

ps:这里带来的是Dependency Walker绿色版,此版本无需安装,下载解压后双击启动即可使用。

完美真人

App特色

1、可以扫描任何32位或64位的Windows模块(exe,dll,ocx,sys等)并构建所有相关模块的分层树形图。

2、对于解决与加载和实行模块相关的系统错误非常有用。

3、可以在Windows 95、98、Me、NT、2000、XP、2003、Vista、7和8上运行。

4、完全免费使用。但是,您不得从其分销中获利,也不得将其与另一种产品捆绑销售。

Dependency Walker使用方法

1、打开Dependency Walker,直接拖入目标exe文件或者dll文件(也可以点击菜单栏上的File,通过Open对话框来打开目标文件),运行界面如下:

完美真人

圈选部分为TestDll.exe的依赖关系,它依赖MyDll.dll、MSVCP1400.DLL等,其各自又依赖其他DLL。

从中可以看出其依赖的深度较大,一般只需要查看最顶层的三次依赖即可。

2、单击MyDll.dll,运行界面如下:

完美真人

3、界面右侧的Function下的函数签名不太清晰,可以右键函数名,选择Undecorate C++ Functions,将函数签名转换成更为易读的形式:

完美真人

4、转换后的形式如下:

完美真人

上部的圈选部分是MyDll.dll的引用对象(也即TestDll.exe)使用的导出函数,下部的圈选部分是MyDll.dll所有的导出函数。从图中可以看出,MyDll提供了4个函数而TestDll只使用了其中的int Minus(int, int)和int Mutiply(int, int)。

另外,注意下其中的颜色标识, 上部的引用函数,如果在动态库中存在,显示为绿色;如果不存在显示为红色。下部的导出函数,如果被引用,显示成深蓝色;如果未被引用,显示成灰色。

5、函数缺失

如果将MyDll中的函数int Minus(int, int)删除,重新生成MyDll.dll,然后再次查看TestDll.exe的依赖关系,显示如下:

完美真人

此时,TestDll.exe引用的两个函数:int Minus(int, int)在MyDll.dll中已不存在,所有显示成红色;而int Multiply(int, int)依旧存在,显示成绿色。这时运行TestDll.exe,会报错显示如下:

完美真人

常见问题

1、Dependency Walker似乎只显示了我的应用程序的一些依赖项。为什么不全部显示出来?

当您第一次在Dependency Walker中打开一个模块时,它只显示隐式、转发和延迟加载依赖关系。许多依赖项是动态加载的,直到您从Dependency Walker中分析应用程序时才会被检测到。如需详细资讯,请参阅相依性Walker处理的相依性类型和使用应用程式分析来侦测动态相依性。

2、为什么我在很多应用程序中看到MPR.DLL在SHLWAPI.DLL下以红色显示,因为它缺少一个名为WNetRestoreConnectionA的函数?我还收到一条“警告:由于延迟加载相关模块中缺少导出函数,至少有一个模块有未解析的导入”消息。

SHLWAPI.DLL的某些版本(如Windows XP上的版本)对MPR.DLL的函数WNetRestoreConnectionA有延迟加载依赖。只要调用DLL准备好处理这种情况,丢失延迟加载函数就不是问题。Dependency Walker标记所有潜在的问题,因为它无法检测应用程序是否打算处理该问题。在SHLWAPI.DLL的情况下,这不是一个问题,因为它不要求WNetRestoreConnectionA存在,并在运行时处理缺失的函数。可以忽略此警告。有关更多详细信息,请参见帮助中的“如何说明Dependency Walker中的警告和错误”部分。

3、为什么MSJAVA.DLL显示为黄色(缺少模块),而我得到一条“警告:至少有一个延迟加载依赖模块没有找到”的消息?

与Windows XP SP2和Windows 2003 SP1一起发布的MSHTML.DLL模块具有对MSJAVA.DLL的延迟加载依赖性。只要调用DLL准备好处理丢失的模块,丢失延迟加载依赖项就不是问题。Dependency Walker标记所有潜在的问题,因为它无法检测应用程序是否打算处理该问题。在这种特殊情况下,MSJAVA.DLL是一个可选模块,MSHTML.DLL准备处理它。可以忽略此警告。有关更多详细信息,请参见帮助中的“如何说明Dependency Walker中的警告和错误”部分。

更新日志

v2.2.6000版本

- 移至新的HTML帮助系统并更新了帮助文本。

- 添加了对MSDN 8.0外部帮助的支撑,并更新了在线帮助URL。

- 处理DLL清单和app.exe.local文件的改进的并行支撑。

- 更新了有关已知操作系统版本、内部版本号和Vista RC1内部版本标志的内部信息。

收起先容展开先容
  • 下载地址
Dependency Walker绿色版 v2.2.6000官方版
  • 本地下载通道:
  • 浙江电信下载
  • 北京联通下载
  • 江苏电信下载
  • 广东电信下载

有问题? 点此报错

发表评论

0条评论

XML 地图 | Sitemap 地图