操作系统为windows 2003,Oracle客户端版本为9.2
VS2005在开发阶段访问Oracle正常,但是在IIS配置完后出现系统提示"System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本"。
解决办法:找到Oracle客户端的安装目录,设置Network Service对该目录具有访问权限即可。
附注:有些同事操作系统为2003,文件夹没有显示‘共享和安全’,按照如下操作即可调出。
第一种方法:打开我的电脑——工具——文件夹选项——查看——使用简单文件夹共享前的对勾取掉一切就ok!
第二种方法:WIN+R打开运行——输入secpol.msc-----本地策略——安全选项——网络访问——本地用户共享安全模式——改为经典就ok!
System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Exception: System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。
NTFS分区跟Oracle貌似有别扭。Oracle 9i Release 2 客户端在安装到Windows的NTFS分区下时的安全认证设置不正确,引起本机的Authenticated Users用户无法看到ORACLE_HOME目录下的内容; 这导致在ASP.NET以Authenticated Users权限使用System.Data.OracleClient连接Oracle数据库时报出以上错误。
要解决以上问题,只要给Authenticated Users 组加上访问Oracle Home目录的权限即可
1、以Administrator权限登录Windows
2、启动Window 资源浏览器找到ORACLE_HOME目录,如C:\Oracle\ora92
3、右键弹出菜单,选择该目录共享与安全(Win2000下要点击属性)
4、点击 “安全” 页签
5、在组和用户名称列表中点击“Authenticated Users” 项.
6、在该用户的权限列表中,将“读取和运行”的选择框置为不选中状态
7、再次点击“读取和运行”的选择框,将其设置为选中状态
8、点击“高级”按钮并在权限项目中确定“Authenticated Users” 是否拥有“读取并运行”权限并应用于“该文件夹,及子文件夹和文件”. 如果不是,双击这样,并确保权限可以“应用于” “该文件夹,及子文件夹和文件”. 该项非常重要你一定要核查.
9、点击“确定” 按钮
10、重启动, 以使得所有的修改生效.
=============================================================================
注意,权限设置好后,不用机器重启的,直接IIS重启下就行了,方法,开始-运行-CMD-IISRESET