码迷,mamicode.com
首页 > 编程语言 > 详细

关于C#使用Dllimport 导入vc++动态库后网站部署提示 “无法加载 DLL,找不到指定模块”的解决方法。

时间:2015-07-29 11:52:41      阅读:556      评论:0      收藏:0      [点我收藏+]

标签:

这次项目需要,做了一个C#写的WebService服务给外部调用,服务内部引用了算法库,本地调试已经通过,现场部署服务时各种提示找不到DLL文件。

第一、如果是包含有32位库在64位服务器系统上运行,会有一个运行时错误,64位的IIS默认“应用程序池”不启用32位支持,需要去“高级设置”里启用32位支持

第二、找不到Dll处理方法:

网上查到的Dllimport路径相关:

DllImport会按照顺序自动去寻找的地方:
1、exe所在目录
2、System32目录
3、环境变量目录

三种都试过没用,依然提示找不到DLL,无法加载,用depends软件查了该库文件,依赖项都有,百思不得其解。

 

最后逼的没办法,把depends发给现场让他们看那个算法DLL的依赖项,最后发现是现场服务器中缺少msvcr100.dll跟msvcp100.dll,本地开发环境有这些。希望跟我遇到一样问题的人能够早点发现。

 

如果调试环境没有问题,必然是实际应用与调试环境有区别,服务运行不了不一定是代码相关。

 

关于C#使用Dllimport 导入vc++动态库后网站部署提示 “无法加载 DLL,找不到指定模块”的解决方法。

标签:

原文地址:http://www.cnblogs.com/TTaiAL/p/4685157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!