2013-06-04 160 views
0

首先,我想這麼說,我讀了其他問題,但他們都沒有幫助我。ODP.NET:提供程序與Oracle客戶端的版本不兼容

在那裏我得到這個錯誤的服務器是Windows 2003 SP2 + .NET框架4.0 +甲骨文I9客戶

我已經下載了最新的ODP.NET ODAC1120320Xcopy_32bit.zip一個複製這些DLL出來。

  • OCI.DLL
  • OCIW32.DLL
  • Oracle.DataAccess.dll
  • orannzsbb11.dll
  • oraocci11.dll
  • oraociei11.dll
  • OraOps11w.dll

我創建了一個小應用程序,其中的理由t連接到oracle。 link

而當我運行這個應用程序時,我得到的提供程序與Oracle客戶端錯誤的版本不兼容。

在下載頁面上也寫了:下面的每個32位ODAC客戶端下載支持到Oracle數據庫版本9.2,10.1,10.2和11.1以及11.2的連接。

所以我想我應該罰款與我的9i數據庫。

我不確定我是否應該使用一些較舊的ODP.NET版本。這裏有一個答案,它促使使用支持.NET 2.0的版本11.1.0.6.20,但我的應用程序是針對.NET 4.0編寫的。

我該怎麼辦?

+1

我最近自己有這個問題。這個問題是由於仍然在目標系統上的不兼容/較老的Oracle DLL引起的。爲了解決這個問題,我不得不卸載Oracle,搜索並刪除所有的磁盤DLL,然後用最新的安裝包(上面描述的那個)重新安裝Oracle。雖然可能有更簡單的方法來處理這個衝突,所以我只是將其作爲評論發佈而不是回答。 – jfrankcarr

+0

使用XCopy下載時,最好簡單地使用提供的安裝腳本,而不是試圖推出自己的產品,並可能缺少一個步驟。 –

回答

0

,我不知道如果沒有某種形式的安裝運行Oracle客戶端支持的任何方法(該XCOPY版本包括安裝一個批處理文件,所以「XCOPY」是有點用詞不當。

那說如果你打算做一些事情,是不支持的,你不如的東西,最終會被支持去 - 100%的託管提供商(指沒有額外的託管DLL複製)目前正處於測試: http://www.oracle.com/technetwork/database/windows/downloads/odpmbeta-1696432.html

即使僅僅是學習經歷,我也是無能爲力的,所以我會理解你是否希望看到你目前的成果。oracle documentation確實表明應用程序目錄實際上處於非託管dll搜索順序中的第一位。我的猜測是需要額外的dll(您使用的是比鏈接文章更新的版本)。我會看到使用Process Monitor之類的工具從您的應用目錄之外加載了哪些特定的dll,並查看是否可以從新的ODAC中找到相應的副本進行復制。

相關問題