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