Oracle連接錯誤解決辦法


在win7 64位 使用oledb方式,連接oracle9i 數據庫,提示:未在本地計算機上注冊OraOLEDB.Oracle.1的程序

項目工程調試模式改為x86,不要是any cpu

安裝Oracle9i客戶端精簡版,並注冊 resgvr32 c:\oracle\ora90\bin\oraoledb.dll。

如遇中文亂碼,在注冊表修改……\oracle\home0下的字符集,我是改成……us7ascii

 

說重點:

關於需要依賴dll的程序,換台電腦無法使用問題的通用解決思路:

程序在A電腦可以使用,換到B電腦無法使用,在排除是系統框架程序(.net framework等)原因后,可能是兩台電腦注冊的dll版本不一致,或者系統環境變量等設置不一致。

在這里http://www.xdowns.com/article/241/Article_3338.html 有很多相關工具:

本次查到問題原因使用率如下工具

3. Process Explorer http://www.xdowns.com/soft/6/56/2006/Soft_33951.html

    這個工具很好用,它可以查看當前運行的每個程序都調用了哪些dll,而且顯示的很全面。相對於Dependency Walker,它顯示dll的信息更全一些,而且動態性更強一些,比如在調試代碼的過程中,程序運行到具體的一步,它調用了哪些dll,再運行到下一步,又調用了哪些dll,都可以看出來。

5. regdllview

    這個工具的特點是可以查看每個已注冊的dll的id值,並且可以很方便的在注冊表中找到這個id。

 

我就是用regdllview發現兩台電腦已注冊的oledb.dll不一致,重新注冊,變為一致 解決了這個問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM