首页 > 代码库 > 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

 

异常出现背景:

系统环境 win7 X64 旗舰版

编程环境 X64 Oracle11g 客户端 ,X86 VS2010

在程序连接数据库时引发BadImageFormatException异常。

 

异常消息提示:

尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

 

异常定位:

引入System.Data.OracleClient.dll版本问题

 

异常解决方式:

原dll版本:C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.OracleClient.dll (系统默认安装路径下)

此版本的System.Data.OracleClient.dll是 X86 .net4.0的

修改后dll版本:替换成 X64 System.Data.OracleClient.dll 或.net 4.0 或.net 2.0皆可

尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。