asp.net调用非托管dll,无法加载 DLL,找不到指定模块解决方法。
最近开发一个项目,里面用到了非.net开发的一个dll文件接口,发现发布到window2003服务器上后,运行网站总是提示 “无法加载 DLL“D:\11\1.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。 ”这个错误。但是我在本地xp系统上调试是可以的。
dll使用com调用如下
[DllImport(@”D:\11\1.dll”, EntryPoint = “aaa”, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern Boolean aaa(bool x);
提问地址:http://topic.csdn.net/u/20121031/17/2085fdf4-cf81-4cf9-8650-e02c1ed8d67d.html
解决方法:
步骤一:dll调用使用绝对路径,如DllImport(@”D:\11\1.dll”或者将调用dll文件放到system32目录下。
可参考http://blog.csdn.net/xsgreen/article/details/3647501
步骤二:使用depends.exe工具查看要调用的dll文件引用了哪些组件(其它dll文件),搜索服务器system32目录,对比dll引用的组件是否存在服务器system32目录中,如果不存在,将缺少的dll文件复制到要调用的dll文件相同目录中。经过对比,发现服务器system32目录下缺少了borlndmm.dll这个dll文件,复制borlndmm.dll到服务器D盘11文件夹下,问题解决。
步骤三:如果上面还没解决,应该就是权限问题,选中要调用dll文件存放文件夹,鼠标右键-》安全-》添加aspnet帐号(ASP.NET Machine Account),勾选完全控制即可。
如果以上三步还不行,就不知道了。
源地址:http://www.cnblogs.com/slyzly/articles/2748940.html
最后注:depends.exe工具,不错的~~
asp.net调用非托管dll,无法加载 DLL,找不到指定模块解决方法。的更多相关文章
- SAS.EnhancedEditor.dll 已加载,但找不到入口点DLLRegisterServer
SAS.EnhancedEditor.dll 已加载,但找不到入口点DLLRegisterServer 重新安装EnhancedEditor 安装Microsoft.NET Framework 3.5 ...
- 启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块
环境:windows8.1专业版 问题:启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块 每次开机都会弹出上图所示的信息. 经过查找是罗技鼠标驱动的问题:而 ...
- Halcon17无法加载"hdevenginecpp":找不到指定的模块
Halcon17无法加载"hdevenginecpp":找不到指定的模块 在C#和Halcon17混合编程中,当执行private HDevEngine MyEngine = ne ...
- 百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法
百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法 金刚 前端 ueditor 初始化 因项目中使用了百度编辑器——ueditor.整体来说性能还不错. 发现问题 我在做一个编辑页面 ...
- 自动加载dll,加载dll中程序集的信息。
自动加载程序集,解析程序集中的方法. private static object Invoke(string lpFileName, string Namespace, string ClassNam ...
- visual studio2017 无法添加引用 未能加载包ReferenceManagerPackage not such interface support 解决方法
安装完visual studio 2017 后添加引用总是提示 未能加载包ReferenceManagerPackage, 这个问题困扰了两天,直到在网上看到了下面这一段 I just got thi ...
- Win10操作系统下Oracle VM VirtualBox6.0加载磁盘提示“发现无效设置”的解决方法(包括“不能桥接网卡”问题的解决方法)
自从电脑换成Win10操作系统后,想借助VMBox处理一些事情,但是遇到了不能桥接网卡的问题,还以为是程序坏了,于是卸载重新安装,但是不行.接着又尝试在虚拟机里重新安装操作系统,还是不行. 然后百度了 ...
- IDEA——找不到或无法加载主类的一种暴力解决方法
对于用maven构建的java项目,可以利用maven工具编译一下,大致上可以解决很多奇奇怪怪的问题. 具体操作如下: 首先找到项目所在的文件夹,以F:\project为例. 删除.idea文件. 在 ...
- 在bootstrap modal 中加载百度地图的信息窗口失效解决方法
这个问题其实很傻,解决方法没有任何技术含量,只是记录下工作中发生的事. 前阵子给一个汽车集团客户做了一个经销商查询系统,其中一个功能是使用地图标注经销商店面地址,并且实现导航功能. 页面演示地址:ht ...
随机推荐
- AngularJS中文介绍
简介 AngularJS是为了克服HTML在构建应用上的不足而设计的.HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了.所以我做了一些工作(你也可以觉得是小 ...
- Best Time to Buy and Sell Stock 解答
Question Say you have an array for which the ith element is the price of a given stock on day i. If ...
- MongoDB appendix
mongo 是数据库shell.一般假定它和mongod 运行在同一台机器上,还假定mongod 绑定了默认端口. eg. mongo staging.example.com:20000,这样就会 ...
- 很少人知道的office专用卸载工具
Microsoft Office是微软公司开发的一套基于 Windows 操作系统的办公软件套装.常用组件有 Word.Excel.Powerpoint等.当我们不需要再用了或者想安装旧版本的话,首先 ...
- myeclipse修改tomcat端口
myeclipse自带的tomcat可以直接在myeclipse下面进行配置,但是如果是配置的tomcat 只能自己手动修改了
- CATransform3D参数的意义
经常忘记CATransform3D各参数的意思,记下来好好理解下 struct CATransform3D { CGFloat m11(x缩放),m12(y切变),m13(旋转),m14(); C ...
- Oracle Linux Server 7安装VMwareTools问题
OracleLinuxServer7安装VMwareTools问题#./vmware-install.pl时报错:#-bash: ./vmware-instal.pl:/usr/bin/perl:ba ...
- mysql-5.6.27源码安装及错误解决办法
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.27.tar.gz yum install -y cmake 当然也可以自己下载源码包安 ...
- SQL创建/修改数据库、表
--创建表 create table 表(a1 varchar(10),a2 char(2)) --为表添加描述信息 EXECUTE sp_addextendedproperty N'MS_Descr ...
- Debian 使用杂记(一)
前几天又冲动的把系统换成Linux了,最开始接触Linux是2010年,那时候买了个本本,预装的是ubuntu8.10,自此知道除了windows原来还有其它操作系统. 不记得什么时候开始知道ubun ...