我们的一名开发团队成员遇到了错误
Attempt to load oracle client libraries threw BadImageFormatException
看来
This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.
但配置系统的是我 - 以下是规范:
- Windows 7 64 位
- Visual Studio 2010 高级版
- Oracle 客户端 11g R2 64 位作为运行时安装
有什么想法吗?
最佳答案
很抱歉添加第二个答案,但如果您在同一台计算机上安装了 64 位和 32 位客户端,您也可能会遇到此问题。
安装了两个客户端
C:\oracle\product\11.2.0\client32Bit
C:\oracle\product\11.2.0\client64Bit
控制你的路径环境变量。哪个 Oracle 客户端第一个,它会先于其他客户端加载。
echo %PATH%
XXXX;C:\oracle\product\11.2.0\client64Bit\BIN;XXX
由于我的 64 位 Oracle 客户端位于 PATH 中的第一个,因此 VS.NET 尝试将其用于 Oracle 连接并抛出错误图像异常。
set PATH=C:\oracle\product\11.2.0\client32Bit\BIN;%PATH%
REM Visual Studio 2008
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"
REM Visual Studio 2010
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"
之后就可以连接oracle了。当然,您可以将 32 位客户端放在路径中的第一位,但对于其他应用程序,我更喜欢将 64 位客户端放在 32 位客户端之前。
关于visual-studio-2010 - 使用 Oracle 客户端 64 位和 Visual Studio 2010 时出现 BadImageFormatException!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5869969/