解決方案一
修複方法:
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。