解决“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”
问题描述:服务器端装的是Windows XP 和Oracle 10g。在服务器端能够正常的访问Oracle数据库,但远程访问该数据库(使用VS 2005,客户端同样是Oracle10g)提示“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”。
弄了一个下午加晚上,终于找到解决的办法:
1.一定要关闭Windows 防火墙;
2.找到ORACLE_HOME文件夹(服务器端是D:\oracle)。点击右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在权限列表中把“读取和运行”的权限去掉,再按应用(据说这是Oracle的一个Bug,在9i版本中也存在);重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认 “Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹;
3.重新启动计算机,让权限设置生效(也可以不重新启动,在运行里运行cmd打开命令窗口,运行命令iisreset,重启下IIS,就可以正常访问);
4.最后客户端如果还不能访问,(我客户端用的是VS2005,用的是其内置的IIS测试代码)重新启动VS2005即可。