查找缺失的DLL工具Dependency Walker

博客作者在处理64位软件在32位系统运行时遇到dll加载问题,通过DependencyWalker工具定位并解决了问题。DependencyWalker是一款免费的实用工具,能够分析模块依赖,帮助排查加载和执行错误。文章提到了在分析过程中可能出现的系统64位dll报错,由于文件系统重定向,导致该软件在某些路径下可能找到错误的dll。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近处理64位软件在32位的编译问题,遇到了一些dll加载不到(32位程序找不到对应的32位dll)导致程序启动不起来的情况,最后借助了工具Dependency Walker把问题找出来了,这里记录一下。

简单介绍:

Dependency Walker是一个免费的实用工具,它可以扫描任何32位或64位Windows模块(EXE,DLL,OCX,SYS等),并建立所有相关模块的分层树形图。Dependency Walker对于排除加载和执行模块故障错误非常有用。 Dependency Walker能检测出许多常见应用问题,例如缺少模块,无效的模块,导入/导出不匹配,循环依赖错误,不匹配的机器类型模块和模块初始化失败。所以对于程序员来说,Dependency Walker(以下简称Depends)是一项必备技能。

使用教程:

已经有人写了,参考:CSDN博客

补充几点:
  1. 文件加载的时候会比较慢,博主的exe文件分析了几分钟,需要耐心等待一下。

  2. 关于一些系统64位dll报错的问题
    %windir%\System32 目录下的位数报错等相关信息忽略即可,因为windows使用了文件系统重定向 https://docs.microsoft.com/zh-cn/windows/win32/winprog64/file-system-redirector?redirectedfrom=MSDN ,导致这个软件对这里的文件路径会找错路径,导致这里报错找到了64位的dll。
    在这里插入图片描述

  3. 点这里显示完整路径效果看起来更好一点。
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值