具有32位Oracle客户端的SSRS报告在64位环境中不起作用

时间:2012-12-13 03:28:19

标签: reporting-services bids oracleclient badimageformatexception

我在BIDS 2008中使用32Bit Oracle客户端构建的SSRS报告,报告在BIDS(VS 2008)中正常运行但在Win2k3 64位服务器上部署到报表管理器时失败并出现以下错误

  

“尝试加载Oracle客户端库会引发BadImageFormatException。在安装了32位Oracle客户端组件的64位模式下运行时会出现此问题。”

我已经阅读了几篇建议使用csscript Enable32Biton64 'true'aspnet_regiis-i启用IIS到32位的文章,但问题是我有其他需要64位功能的应用程序,所以不能这样做。

请建议我这样做的方法.TIA。

4 个答案:

答案 0 :(得分:2)

在服务器上安装Oracle 64位客户端工具,例如

http://www.oracle.com/technetwork/topics/winx64soft-089540.html

答案 1 :(得分:1)

这是我第二次配置类似服务器,第二次花费数小时计算出这个服务器。如果没有其他人,我正在为将来的我写这篇文章。 这适用于Windows Server 2012 R2 64位,8GB RAM,300 + GB HDD,Intel Xeon CPU E5620 @ 2.40GHz,运行Microsoft SQL Server Reporting Services 2012 64位和IIS 7.0以及使用Oracle Client 32位连接系统的Web应用程序.Data.OracleClient

  1. 安装64位客户端
  2. 将Oracle库存目录@“C:\ Program Files \ Oracle”的名称更改为“C:\ Program Files \ Oracle64”
  3. 重新启动计算机并测试从SSRS到Oracle的连接
  4. 安装32位客户端并为其主目录指定其他位置
  5. 重新启动计算机并测试从SSRS到Oracle以及从Web应用程序到Oracle的连接
  6. 我希望这有助于我未来的自我和其他人:)

答案 2 :(得分:0)

请安装64位oracle,复制tnsnames.ora并重新启动服务器,我遇到同样的问题,并且在完成后工作正常。

答案 3 :(得分:0)

我遇到了从SSRS 2014运行的同样问题。试图安装SSRS 2016(版本14.0.609.142),同样的问题。测试连接工作正常,但是当我想继续配置时,我收到消息

  

在安装了32位Oracle客户端组件的64位模式下运行时会出现此问题

我尝试配置ODBC连接,发现报告服务器只查看了32-odbc服务器。

接下来,我安装了最新的Oracle 32位客户端(12.2.0.1.0)。 然后一切都很好!!

因此,即使错误消息要求使用64驱动程序而不是32位驱动程序,实际情况也是如此。