我有我已經從Windows 2003服務器上運行IIS6.0轉移到64一個經典的ASP應用程序位Windows 2008 R2運行IIS7。在IIS7中,我創建了一個網站並添加了一個應用程序,並設置了應用程序池以啓用32位應用程序。「提供者無法找到,可能未正確安裝」使用ORAOLEDB,IIS7,32位應用程序,64位O/S
應用程序使用ORAOLEDB驅動程序連接到Oracle數據庫 - 我已經安裝了64位Oracle客戶端11.2.0.3以連接到後端Oracle 11g數據庫,並且可以通過與使用SQLPlus的應用程序相同的用戶進行連接。
當我雖然運行應用程序,它嘗試連接到Oracle失敗,IIS日誌顯示錯誤:
"Provider cannot be found. It may not be properly installed"
我已經試過各種可能的事情,試圖得到這個工作:
- 註冊OraOLEDB11.dll手動
- 從使用32位驅動代替都與32位應用程序池
- 停用32位應用程序啓用和禁用
- 完全重新安裝驅動程序,並嘗試以上
到目前爲止,沒有任何的運氣位的應用程序。 ASP代碼連接如下:
objOracleConnection.CursorLocation = adUseClient
objOracleConnection.ConnectionString = "Provider=OraOLEDB.Oracle;Data Source=MYDATASOURCE;User ID=USER;Password=PASSWORD;PLSQLRSet=1;OLE DB Services=-2;"
objOracleConnection.Open
編輯:我試過一個簡單的VBS腳本(使用基本與上面相同的代碼)進行連接,並得到了同樣的錯誤,所以IIS可能不問題。然而,完全相同的腳本在Windows 2003盒子上工作。
我已經通過「兼容性疑難解答」選項重新安裝Oracle客戶端,這表明應用程序工作在Windows 2003 SP1,但仍同時從VBS腳本和IIS應用程序:(
感謝約翰32位 - 我已經嘗試了所有組合,遺憾的是如32位應用程序池與32位驅動程序,32位應用程序池與64位驅動程序等,但仍然得到錯誤。 請注意我的編輯上面,我得到同樣的問題m VB腳本,所以IIS可能會有點紅鯡魚。 – RichardB