Dependency Walker 与 Dependencies
- 1. Dependency Walker
- 1.1 功能特点
- 1.2 使用方法
- 1.3 注意事项
- 2. Dependencies
- 2.1 功能特点
- 2.2 使用方法
- 2.3 注意事项
- 3. 总结
1. Dependency Walker
Dependency Walker 是一个免费软件工具,用于查看 Windows 应用程序的模块(DLL 文件)依赖关系。它分析指定的可执行文件(如 EXE、DLL、SYS、OCX 文件等),并列出所有被它们使用的模块,以及它们的导入和导出函数。以下是关于 Dependency Walker 的些关键点:
1.1 功能特点
-
模块依赖性分析
显示应用程序或模块所依赖的所有动态链接库(DLL)。
列出每个依赖模块的路径、版本信息、CPU架构等。 -
函数导入导出分析
列出每个模块导入的函数及其来自的DLL。
列出每个模块导出的函数及其内存地址。 -
问题检测
标识丢失的模块或无法加载的模块。
报告模块加载失败的原因,如找不到模块、路径问题、版本不匹配等。
检查模块的编译器和编译选项。 -
模拟应用程序启动
可以模拟应用程序的启动过程,以识别在运行时可能出现的模块加载问题。
1.2 使用方法
-
下载和安装
Dependency Walker 可以从其官方网站下载:Dependency Walker 下载链接。下载后解压并运行即可使用,无需安装。 -
打开文件:
启动 Dependency Walker,并使用“File”菜单中的“Open”选项,选择要分析的可执行文件或DLL。 -
查看模块依赖关系:
在主窗口中,将看到所选文件的模块树,展示了所有直接和间接依赖的模块。
点击每个模块,可以查看详细的属性和依赖关系。 -
查看导入和导出函数:
选择一个模块后,可以在下方的窗格中查看该模块导入和导出的函数列表。 -
检测问题:
在分析结果中,如果有任何丢失的模块或加载失败的问题,Dependency Walker 会用红色高亮显示。
1.3 注意事项
- Dependency Walker 不再活跃开发,最新版本可能不支持最新的Windows特性和模块。
2. Dependencies
Dependencies 是一个开源工具,用于分析 Windows 应用程序的依赖关系。它被设计为 Dependency Walker 的现代替代品,具有更好的兼容性和性能。以下是关于 Dependencies 的一些关键点:
2.1 功能特点
-
模块依赖性分析:
显示应用程序或模块所依赖的所有动态链接库(DLL)。
列出每个依赖模块的路径、版本信息、CPU架构等。 -
函数导入导出分析:
列出每个模块导入的函数及其来自的DLL。
列出每个模块导出的函数及其内存地址。 -
问题检测:
标识丢失的模块或无法加载的模块。
报告模块加载失败的原因,如找不到模块、路径问题、版本不匹配等。 -
现代化支持:
支持最新版本的 Windows 和 64 位应用程序。
提供比 Dependency Walker 更快的分析速度和更准确的结果。
2.2 使用方法
-
下载和安装:
从 Dependencies 的 GitHub 页面 下载最新版本。
解压后运行DependenciesGui.exe
即可,无需额外安装。 -
打开文件:
启动 Dependencies,并使用“File”菜单中的“Open”选项,选择要分析的可执行文件或DLL。 -
查看模块依赖关系:
在主窗口中,将看到所选文件的模块树,展示了所有直接和间接依赖的模块。
点击每个模块,可以查看详细的属性和依赖关系。 -
查看导入和导出函数:
选择一个模块后,可以在下方的窗格中查看该模块导入和导出的函数列表。 -
检测问题:
在分析结果中,如果有任何丢失的模块或加载失败的问题,Dependencies 会用红色高亮显示。
2.3 注意事项
- Dependencies 仍在活跃开发中,定期检查 GitHub 页面获取最新版本。
3. 总结
Dependencies 相当于是 Dependency Walker 的一个延续,且是开源的,一直有人维护,所以个人建议优先选择 Dependencies