大小:438K
更新时间:24-11-14
系统:Pc
版本:v2.2.6000
Dependency Walker是一款专业的软件和程序依赖性分析工具,可以扫描任何32位或64位的Windows模块,如exe,dll,ocx,sys等文件,并支持构建所有相关模块的分层树形图,可帮助用户解决与加载和执行模块相关的系统错误。
另外,Dependency Walker功能丰富多样,主要功能如下:查看PE模块的导入模块;查看PE模块的导入和导出函数;动态剖析 PE 模块的模块依赖性;解析C++函数名称。有需要的朋友欢迎免费下载使用。
ps:这里带来的是Dependency Walker绿色版,此版本无需安装,下载解压后双击启动即可使用。
1、可以扫描任何32位或64位的Windows模块(exe,dll,ocx,sys等)并构建所有相关模块的分层树形图。
2、对于解决与加载和执行模块相关的系统错误非常有用。
3、可以在Windows 95、98、Me、NT、2000、XP、2003、Vista、7和8上运行。
4、完全免费使用。但是,您不得从其分销中获利,也不得将其与另一种产品捆绑销售。
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内部版本标志的内部信息。
同类热门
类似软件
热门标签
网友评论0人参与,0条评论
最新排行
Astah Professional(uml建模工具)118.3Mv10.0.0官方版 Astah Professional(原名JUDE)是一款轻便简单,友好易用的uml建模工具。软件功能强大,支持UML1.4中所有图和主要的图形,元模(Meta Model)及属性,全面满足您建模所需,还集成了思维导图,工程合并,协作开发等十余项特
查看jquery easyui953Kv1.5 web前端开发肯定是少不了各种插件的,而这款jquery easyui就是许多的web开发者最喜欢用到的一个ui插件,它是基于jquery开发的,拥有丰富并且美观的UI界面,能够让开发者快速的打造出各种炫酷的web页面,非常不错,而且目前各项不足正
查看SCM Manager客户端(源代码管理服务器)94.03Mv3.0.3官方版 SCM Manager官方版是一款专业的源代码管理服务器,该软件基于Java构建,支持跨平台,是您对源代码管理的最佳帮手,同时还提供了命令行供安装服务、卸载和重启服务,其初始化脚本供自动初始化相关的环境变量,无需手动配置,从web界面即可进行配置,
查看Relative-RZJ(语言通用IDE)12.91Mv1.9.6.5官方版 Relative-RZJ是一款绿色免费,功能强大的语言通用IDE集成开发环境。它不属于任何一种语言,一款好的IDE成就你的编程入门,而Relative则为非专业人士创造了机会。匠心打造RELATIVE-RZJ通用IDE,带你走进你的编程梦想。Rel
查看APKSign(APK签名工具)292Kv1.0官方版Dodo APKSign是一款用来制作安卓ROM和APK签名软件,有时候我们下载完APK之后会遇见无法使用,当用户遇到apk无法使用,可能就是没签名,用户可以使用软件对apk进行签名,系统进行了安全限制,下载这款Dodo APKSign来对APK进行签名
查看JUDE(UML建模软件)1.63Mv1.2.1官方版 JUDE(Java and UML Developers' Environment)是一款小巧实用、功能强大的UML建模软件,它一个中日合作采用XP开发方式纯JAVA开发的程序,功能完善,速度快,易操作,易上手,而且软件发布采用的SMALL REL
查看VBA for WPS8.32Mv7.0 VBA for WPS是一款WPS宏安装包,该VBA插件全名叫VBA for WPS Office,VBA是指Visual Basic for Application,它是在Office中使用的宏语言,主要为了增强Word、Excel等软件的自动化
查看