灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:7780回复:0

asp.net无法加载oci.dll等错误解决办法

楼主#
更多 发布于:2013-09-13 13:27
问题现象:net在windows2003下访问oracle9i提示“无法加载oci.dll”或"无法在dll oci.dll中找到名为ocienvcreate的入口点 "的修复方法
 
解决方法一
 
修复方法:
 
1:找到oracle客户端的安装目录,例如:E:/oracle/ora92,选中目录,在“属性--安全”里面删掉“ASP .NET、Users用户”然后再添加进去,并赋予“完全控制或者修改权限”;将everyone赋予“完全控制或者修改权限”,注意:网站的目录权限也要设置为ervryone完全访问,不然oracle好了,网站同样访问不了.重新启动。
2:最简单直接的方法是启用ASP .Net用户模拟,在web.config的<system.web></system.web>配置节中增加:<identity impersonate="true" userName="USER" password="PASSWORD"/>
如:<identity impersonate="true" userName="administrator" password="123456"></identity>
 

解决办法二
 
研究了很久,什么目录权限啊,注册表啊,都没有见效。
 
最终无奈之下把oraclient8.dll,orasql9.dll,oci.dll拷贝到System32解决问题。
 
代码如下
 
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC/MTxOCI]
 
“OracleXaLib”=”oraclient8.dll”
 “OracleSqlLib”=”orasql8.dll”
 “OracleOciLib”=”oci.dll”
 
 
 

对于xp系统第一种方法中的,属性中是默认没有安全选项的,解决办法:工具->文件夹选项->查看,去掉"使用简单文家共享"的选项即可
 

附其它办法
 
解决ASP.NET连接Oracle数据库出现无法加载DLL(oci.dll)
 在文件夹选项中取消□采用简单文件共享(推荐)
ORACLE_HOME 路径所在的分区格式是NTFS格式:
Oracle安装目录下ora92属性->安全
权限设一下任何人都可以访问或是设成ASPNET这个用户可以访问就行了
 确保ASP.NET用户有权限访问oci.dll。

喜欢0 评分0
游客

返回顶部