首页 新闻 会员 周边

如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

0
悬赏园豆:50 [已解决问题] 解决于 2015-03-19 16:17

程序在服务器上运行出现如下错误:

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

一、各个环境如下:

(1)开发环境:win7 64位 + Visual2008 + oracle 11g

(2)Web 服务器环境:Server2008R2 64位,framework 3.5,同时也安装了 oracle 11g 64位;IIS7.0;

(3)Data服务器环境:Server2008R2 64位  oracle 11g 64位。

二、已经尝试的步骤:

(4)在编译的时候分别选择 any CPU、X86、X64,结果均如前面一样。

(5)分别选择any CPU、X86、X64编译以后,再在IIS应用程序池中选址“启用32位程序”,出现如下情况:【验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。】

请高手大侠帮忙提提建议,不胜感激!

 

不辞远的主页 不辞远 | 菜鸟二级 | 园豆:290
提问于:2015-03-18 15:17
< >
分享
最佳答案
2

(5)分别选择any CPU、X86、X64编译以后,再在IIS应用程序池中选址“启用32位程序”,出现如下情况:【验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。】

接着修改 <machineKey>,通过 IIS 指定一个固定值,所有机器用相同的值

收获园豆:45
Launcher | 高人七级 |园豆:45045 | 2015-03-18 15:44

有用。谢谢。

不明觉厉。

不辞远 | 园豆:290 (菜鸟二级) | 2015-03-19 16:16
其他回答(1)
0

你在访问DB服务器的那台服务器(一般是Web服务器)上安装一个64位的oracle client就解决了。我以前遇到过。

收获园豆:5
hexllo | 园豆:318 (菜鸟二级) | 2015-03-19 09:14

谢谢!

之前已经在web服务器上安装了 oracle 64的服务器端。比较奇怪

支持(0) 反对(0) 不辞远 | 园豆:290 (菜鸟二级) | 2015-03-19 16:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册