Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when

报错:

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 2008 操作系统;IIS 7程序

服务端:windows 2008操作系统;oracle 数据库版本 10.2.0.1 64bit

 

1、IIS7 程序搭建为指定字符串的形式连接数据库。也就是tnsname.ora中的字符串。

2、应用程序池配置中,高级配置:

启用32位应用程序 True

解析:WOW64模式下(windows on windows64),只加载32位应用程序。(这里我们也考虑使用 flase模式,但是这样模式程序更通过不了)

 

这样问题就来了,我们客户端默认也是64 bit的,但是我们应用程序只能启动32位。然后用32位应用程序去连接64位的oracle就出问题了。这个问题与32位plsql连接64bit oracle的问题是一样的。

 

类似问题解释:

这里要提一下plsql连接64bit oracle的问题

因为目前plsql没有64bit的,只有32位。所以我们这里需要下载一个32位的 oracle client (instantclient_11_2),来配置新的tnsname.ora,已登录我们的64bit数据库。

 

解决方法:

1、  下载32位客户端并配置。因为我们之前安装plsql连接64bit,就下载了32位的客户端位置。

2、  配置环境变量:直接把这个32位的目录位置,配置PATH 就OK 了。

3、 配置完PATH必须重启服务器,才能生效!

你可能感兴趣的:(oracle,windows,数据库,IIS,64bit,Components)