快捷搜索:

Could not create an environment OCIEnvCreate returned 1(OCIEnvCreate 失败 返回代码为1,但错误消息文本不可用)

本日用C#连接oracle10g的时刻,碰到了这个问题。windows2003 PRO R2+oracle 10g

Could not create an environment: OCIEnvCreate returned -1

网上的措施就那几个,试遍了也没用。

1、主如果将oracle主目录oracle\的读写权限付与asp.net或者是IUSER_..和IWAM_..,重启谋略机。

2、打开在IIS中的WEB属性--主目录--履行权限【改为-脚本和可履行文件】;

3、利用法度榜样池【改为-MSSharePointAppPool】,刷新;

4、变动安装目录的属性页安然属性,加入ASPNET,IWAM_机械名,IUSER_机械名三个用户并整个设为完全节制。重启。无效。

5、将上述三个用户均加入administrator组。

然则上述措施宣告掉败,而现在看来,呈现这个问题主要照样权限和设置设置设备摆设摆设。可能因为下载版本问题,10g很多时刻默认安装后的设置设置设备摆设摆设和情况变量设置不全,上述要领掉败可可以考试测验如下措施:

1、设置设置设备摆设摆设tnsnames.ora。设置设置设备摆设摆设措施网上很多。

2、完善情况变量设置设置设备摆设摆设。情况变量的设置设置设备摆设摆设网上也很多,这里不枚举了

3、最紧张的一点,注册表加入下面键值

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]

"LD_LIBRARY_PATH"="F:\*\bin"

"NLS_LANG"="AMERICAN_AMERICA.ZHS16GBK"

"TNS_ADMIN"="F:\*\bin"

详细路径根据实际环境改动。注册表加入下面键值后,从新调试法度榜样,顺利经由过程。

缘故原由来自:

安装Oracle9i客户端后,应用System.Data.OracleClient造访Oracle数据库假如呈现这种差错:

System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.

缘故原由

Oracle 9i Release 2 客户端在安装到Windows的NTFS分区下时的安然认证设置不精确,引起本机的Authenticated Users用户无法看到ORACLE_HOME目录下的内容; 这导致在ASP.NET以Authenticated Users权限应用System.Data.OracleClient连接Oracle数据库时报出以上差错。

办理措施:

在oracle/bin目录,加入给以下用户/组,授完全权限:

asp.net machine account

administrator

authenticated users

并且将Asp.net加入到administrator组,再重启IIS

上面这种措施是实践过可行的,

网上还有一种规划,大年夜抵相同,有渺小差别,着实不主张将asp.net加入administrator,也不主开开过份大年夜的权限,但下面这种措施,试过彷佛弗成行:

以Administrator权限登录Windows.

启动Window 资本浏览器找到ORACLE_HOME目录,如C:\Oracle\ora92

右键弹出菜单,选择该目录共享与安然(Win2000下要点击属性)

点击 “安然” 页签

在组和用户名称列表中点击“Authenticated Users” 项.

在该用户的权限列表中,将“读取和运行”的选择框置为不选中状态

再次点击“读取和运行”的选择框,将其设置为选中状态

点击“高档”按钮并在权限项目中确定“Authenticated Users” 是否拥有“读取并运行”权限并利用于“该文件夹,及子文件夹和文件”. 假如不是,双击这样,并确保权限可以“利用于” “该文件夹,及子文件夹和文件”. 该项异常紧张你必然要核查.

点击“确定” 按钮

重启动, 以使得所有的改动生效.

您可能还会对下面的文章感兴趣: