你好,欢迎访问我的博客!登录
当前位置:首页 - 异常 - 正文 君子好学,自强不息!

Unable to load DLL 'xxx.dll': 找不到指定的模块异常的解决方法

2018-06-21 15:06:12异常admin79°c
A+ A-

使用VS2005在Windows Server 2003上编译C++代码, 输出dll文件, 把该dll放到运行机器(与编译机器的系统完全一致, 但是没有安装VS2005)上, 供C#代码(web前台)调用, 提示无法加载dll.

Unable to load DLL 'xxx.dll'异常原因分析

1. 路径完全没有问题, dll放置在应用程序的启动目录.

2. 经过查阅资料发现, 有可能是该dll依赖于另一个dll, 而另一个dll不存在.

我使用MD选项(项目属性->配置属性->C/C++->代码生成->运行时库)编译dll的, MD表示多线程动态链接(使用运行时库). 使用Dependency Walker工具查看dll文件的依赖, 发现有两个依赖找不到:MSVCR80.DLL和IESHIMS.DLL. 其中的第一个依赖MSVCR80.DLL是VC的运行时库.

Unable to load DLL 'xxx.dll'异常解决方法

Unable to load DLL

制作dll时,将它可能需要的其他dll加载进dll。

   property->c/c++->code generation ->Runtime Library 由/MDd修改为/MT(好像/MTD也可以)

   这样制作的dll明显大了很多(以前是19k,现在是256k)

另外我们线上的c#使用的platform 使用的是x86(不知道是否必须)。

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
Unable to load DLL 'xxx.dll': 找不到指定的模块异常的解决方法

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签:

发表评论

选填

必填

必填

选填

请拖动滑块解锁
>>


  用户登录