解决第三方dll出现:找不到指定模块(非路径错误)

我最近在运行编译完成的小程序出现“找不到指定模块” 问题, 我解决问题之后,觉得还是记录一下。

出现场景:在本地编译完成可以正常运行;发布之后在部分电脑上无法运行出现 “找不到指定模块” 这个错误。

首先使用VS自带的工具dumpbin,具体位置在VS安装目录的 VC\bin 文件夹下dumpbin.exe。(不知道路径的可以通过Everything文件查找小程序搜索dumpbin.exe)
在这里插入图片描述命令行切换到该目录
输入dumpbin /dependents “dll路径文件名”
例如:我要查看DesktopDuplication.dll这个文件依赖哪些其他dll文件。
输入:dumpbin /dependents "DesktopDuplication.dll路径"即可
在这里插入图片描述
接下来通过Everything程序搜索依赖的dll路径,将所有依赖文件都放到项目的生成目录中(和引用dll同级目录)。

Everything工具下载

总结:
被调用的这个库(A),依赖的其他动态库(B)。
A库在载入时,没法找到B库。所以报错:找不到指定模块。

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常是由于无法指定的动态链接库(DLL模块导致的。出现这个错误的原因可能有以下几种情况: 1. 模块未正确安装:如果你使用的是第三方模块,可能是因为该模块未正确安装导致的。你可以尝试重新安装该模块,可以使用pip命令来安装,例如:`pip install 模块名`。 2. 环境变量配置错误:如果你的系统环境变量配置错误,也可能导致不到指定模块。你可以检查一下你的环境变量配置是否正确,特别是`PATH`变量,确保包含了Python解释器和所需模块路径。 3. Python版本不匹配:有时候,你可能在Python 2.x版本中安装了一个只适用于Python 3.x版本的模块,或者反之。请确保你安装的模块与你使用的Python版本兼容。 4. 缺少依赖库:某些模块可能依赖于其他的库,如果这些依赖库没有正确安装,也会导致不到指定模块。你可以查看模块的文档或官方网站,了解它的依赖关系,并确保这些依赖库已经正确安装。 5. 操作系统不支持:有些模块可能只能在特定的操作系统上使用,如果你的操作系统不支持该模块,也会导致不到指定模块。 以上是一些常见的导致"ImportError: DLL load failed: 不到指定模块"错误的原因和解决方法。如果以上方法都无法解决问题,你可以提供更多的详细信息,例如你使用的Python版本、具体的错误信息等,以便更好地帮助你解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值