2013-10-31 74 views
1

我有我已經從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應用程序:(

回答

0

這得到了同樣的問題是一個受過教育的猜測,但在IIS7使32個應用程序似乎禁用64個應用程序,如果它是一個64位驅動程序,您可能需要禁用您的應用程序池

+0

感謝約翰32位 - 我已經嘗試了所有組合,遺憾的是如32位應用程序池與32位驅動程序,32位應用程序池與64位驅動程序等,但仍然得到錯誤。 請注意我的編輯上面,我得到同樣的問題m VB腳本,所以IIS可能會有點紅鯡魚。 – RichardB

相關問題