unable to load dll(由于应用程序配置不正确,应用程序未能起动)问题解决方法 .

当在不同机器上运行VC++编译的DLL时,可能出现'无法加载DLL'的错误。解决方法包括:将VC运行时库DLL文件复制到目标机器,静态链接VC运行时库,使用静态MFC库,或者确保已安装所有依赖项(如OPENCV)。在某些情况下,系统重启或安装缺失的依赖库(如IESHIMS.DLL和WER.DLL)可能是必要的。
摘要由CSDN通过智能技术生成

自己写的一个DLL(VC),然后用C#调用,在自己的机器上运行没有问题,放在其它机器(XP)上,就出现如标题所示的问题,换一台2003出现新的问题:找不到指定的模块(Exception from HRESULT:0X8007007E)。意思应该都差不多。上网搜索解决方法。

方法一:
在C:\Program Files\Microsoft Visual Studio 8\VC\redi
st\Debug_NonRedist\x86\Microsoft.VC80.DebugCRT 下找到了下列文件:

msvcm80d.dll
msvcp80d.dll
msvcr80d.dll
Microsoft.VC80.DebugCRT.manifest

把这几个文件拷贝到目标机器上,与运行程序同一文件夹或放到system32下,就可以运行那个程序了。

其他release版,MFC程序什么的都是拷redist下相应文件夹下的文件就可以了,文件夹后都有标识!

方法二:
修改编译选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值