C# importC++编译的dll提示“找不到指定的模块”
2017-11-17 11:45
1521 查看
前提:
1、VS2015 C#winForm客户端程序,使用了C++编译的dll(此处简称A.dll),调试没问题。
2、使用VS自带的打包程序进行打包,也将A.dll打包进去了。
结果:
拿到其他电脑上安装运行后,涉及到使用A.dll的功能,都提示“找不到指定的模块”。
解决:
1、检查A.dll是否打包进去—–>确认安装目录下有A.dll
2、检查A.dll关联的dll是否打包进去——->经确认有四个dll未打包进去。
如何确认缺少的dll:由于这四个dll是系统库文件,一般情况下不会注意到。(哎呀,多亏了自己灵光一闪,哈哈)
我是通过工具DLLShow和depends22_x86查看A.dll关联的dll,其实只用depends22_x86就可以了。效果图如下:(看到了吧,都是系统库文件啊,比较难找的T_T。)
将黄色部分找到,从网上下载或者去本机C盘找(因为本机没问题,说明本机肯定有这些文件),找到后用工具再查看一遍,如果还有黄色提示,那就继续找,找到没有黄色部分为止。
最后将所有找到的dll文件拷贝出来,一起打包就可以了。
3、注意:如果程序在64位操作系统运行就去“C:\Windows\SysWOW64”下找,如果在X86电脑运行就去“C:\Windows\System32”下找。
心路历程:
a)刚开始没觉得有少了的dll,因为我编译的,我用到的都打包进去了
b)网上搜了相关资料,也许A.dll的路径不对,也许import方式有问题,结果改成绝对路径也没有用。
c)纠结了一天啊,觉得还是少了关联的dll,幸好自己想到了DLL查看工具。
d)解决了,皆大欢喜啊。哈哈哈^O^
最后:
这是我第一次写博客,希望自己能坚持下去,记录一点一滴,告诉自己要有耐心,要有那灵机一动,功夫不负有心人滴!
2018-1-31更新:
后来发现,我是用VS2015开发的APP,将APP安装到其他电脑上出现上述问题是因为缺少运行时组件,方法很简单,请参考下图:
1、VS2015 C#winForm客户端程序,使用了C++编译的dll(此处简称A.dll),调试没问题。
2、使用VS自带的打包程序进行打包,也将A.dll打包进去了。
结果:
拿到其他电脑上安装运行后,涉及到使用A.dll的功能,都提示“找不到指定的模块”。
解决:
1、检查A.dll是否打包进去—–>确认安装目录下有A.dll
2、检查A.dll关联的dll是否打包进去——->经确认有四个dll未打包进去。
如何确认缺少的dll:由于这四个dll是系统库文件,一般情况下不会注意到。(哎呀,多亏了自己灵光一闪,哈哈)
我是通过工具DLLShow和depends22_x86查看A.dll关联的dll,其实只用depends22_x86就可以了。效果图如下:(看到了吧,都是系统库文件啊,比较难找的T_T。)
将黄色部分找到,从网上下载或者去本机C盘找(因为本机没问题,说明本机肯定有这些文件),找到后用工具再查看一遍,如果还有黄色提示,那就继续找,找到没有黄色部分为止。
最后将所有找到的dll文件拷贝出来,一起打包就可以了。
3、注意:如果程序在64位操作系统运行就去“C:\Windows\SysWOW64”下找,如果在X86电脑运行就去“C:\Windows\System32”下找。
心路历程:
a)刚开始没觉得有少了的dll,因为我编译的,我用到的都打包进去了
b)网上搜了相关资料,也许A.dll的路径不对,也许import方式有问题,结果改成绝对路径也没有用。
c)纠结了一天啊,觉得还是少了关联的dll,幸好自己想到了DLL查看工具。
d)解决了,皆大欢喜啊。哈哈哈^O^
最后:
这是我第一次写博客,希望自己能坚持下去,记录一点一滴,告诉自己要有耐心,要有那灵机一动,功夫不负有心人滴!
2018-1-31更新:
后来发现,我是用VS2015开发的APP,将APP安装到其他电脑上出现上述问题是因为缺少运行时组件,方法很简单,请参考下图:
相关文章推荐
- C#调用C++ dll导出函数提示找不到指定模块 by:凉游浅笔深画眉 / Net7Cracker
- 处理c#调用c++dll所引起的“找不到指定模块"和BadImageFormatException异常
- C#调用C++ Build 写的DLL时,有时会出错,错误为无法加载 DLL "XXX.dll": 找不到指定的模块。(异常来自 HRESULT:0xXXXXXX)。。
- C#换机器后调用dll失败提示无法加载DLL找不到指定的模块
- C#调用C++接口提示找不到指定的模块解决方法,本机正常
- 处理c#调用c++dll所引起的“找不到指定模块"和BadImageFormatException异常
- C#开发中提示无法加载DLL"***.dll":找不到指定的模块(异常来自HRESULT:0x8007007E)问题的解决办法
- C#调用SCL2008 动态库SCL_API_cdecl.dll or SCL_API_Stdcall.dll,提示找不到指定模块
- wxpython ImportError: DLL load failed: 找不到指定的模块
- c# 无法加载DLL“xxxx”:找不到指定的模块(异常来自HRESULT:0X8007007E)的一个解决方法
- win7/python3.5/tensorflow ImportError: DLL load failed: 找不到指定的模块
- python3.5 运行from skimage import morphology,feature报错ImportError: DLL load failed:找不到指定模块
- c# 无法加载xxx.dll 找不到指定的模块(如何指定文件夹)
- c++ clr编译dll在c#调用时出现“试图加载不正确的格式”“找不到dll”错误的解决
- c# 无法加载DLL找不到指定的模块。 (异常来自 HRESULT:0x8007007E) 的解决办法之一
- 我电脑上的mssql2000居然,被黑了,在还原数据时提示:无法装载DLL Microsoft提示请误随意操作SQL数据库,以免对数据库造成不必要的麻烦或DLL所引用的某一DLL。原因:126(找不到指定模块)
- c# p/invoke 无法加载指定的dll 找不到指定的模块 解决方法
- [Python] from scipy import sparse 报 DLL load failed:找不到指定模块错误
- 【软件开发】关于Rundll32.exe调试动态库(.dll)时提示“找不到指定的模块”的解决方案
- from scipy.linalg import _fblas ImportError: DLL load failed: 找不到指定的模块