【茶包射手日記】ODP.NET回報版本不相容錯誤
0 |
同事在一台原本只有ODP.NET 9207的測試台安裝ODP.NET 11g,並將該測試台上ASP.NET網站的ODP.NET版本升級到ODP.NET 11g。
接獲報案,原本週二換版後測試OK,今天再測試時,傳回以下錯誤:
Exception Details: Oracle.DataAccess.Client.OracleException: The provider is not compatible with the version of Oracle client
[OracleException (0x80004005): The provider is not compatible with the version of Oracle client]
Oracle.DataAccess.Client.OracleInit.Initialize() +505
Oracle.DataAccess.Client.OracleConnection..cctor() +841
比對了ASP.NET bin下的DLL版本,程式為前天所換上的版本,原本已測試OK,過了個中秋節,今天卻忽然失敗頗令人費解。但我看到錯誤訊息中有個關鍵字:
0x80004005 0x80004005 0x80004005 0x80004005 ...
有經驗的老鳥都知道這是存取權限被拒的代碼,加上之前有幾次Oracle Client安裝目錄權限設定導致問題的經驗,故我重新套用Authenticated User權限給整個\oracle\product\11.2.0\client_1目錄,再配合IISRESET後,錯誤消失!
[2011-03-29補充] 再遇相同錯誤,但加完權限少了IISRESET步驟,更動未生效,多花了五分鐘才想到少一動,特立此碑紀念。
Comments
Be the first to post a comment