萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> asp.net無法加載oci.dll等錯誤

asp.net無法加載oci.dll等錯誤

 問題現象:net在windows2003下訪問oracle9i提示“無法加載oci.dll”或"無法在dll oci.dll中找到名為ocienvcreate的入口點 "的修復方法

解決方法一

修復方法:

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。

copyright © 萬盛學電腦網 all rights reserved