asp.net写的程序,在windows2003下访问oracle9i,提示“无法加载oci.dll”或"无法在dll oci.dll中找到名为ocienvcreate的入口点 ",这里分享下我的解决方法,供大家参考。
方法1,修复方法:
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>
方法2,把oraclient8.dll,orasql9.dll,oci.dll拷贝到System32。
如果你用的是xp系统,第一种方法中的属性中是默认没有安全选项的。
解决办法:
工具->文件夹选项->查看,去掉"使用简单文家共享"的选项即可。
附,其它可用的方法。
1,解决ASP.NET连接Oracle数据库出现无法加载DLL(oci.dll),在文件夹选项中取消□采用简单文件共享(推荐)。
2,ORACLE_HOME 路径所在的分区格式是NTFS格式:
Oracle安装目录下ora92属性->安全
权限设置为everyone可以访问或设成ASPNET用户可以访问即可,以确保ASP.NET用户有权限访问oci.dll。