【发布时间】:2014-08-05 21:07:18
【问题描述】:
我设计了一个 C# 应用程序来连接到 Oracle 数据库并更改模式用户密码。我的参考程序集是 System.Data.OracleClient 的位置:“C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5\System.Data.OracleClient.dll”
我用来设计/测试应用程序的平台如下所示: 1. 64位Windows 7平台。 2. 32位.Net Frameworkv4.5 3. 32位Oracle 10g客户端。
我也需要这个应用程序为 64 位 Oracle 客户端运行。但是,当我将二进制文件传输到安装了 64 位 Oracle 11g 的机器上时,我收到此错误:“尝试加载 Oracle 客户端库引发 BadImageFormatException。在安装了 32 位 Oracle 客户端组件的 64 位模式下运行时会出现此问题。”
我不确定如何解决此问题。请建议我是否需要进行任何代码更改或程序集参考。我阅读了很多类似的论坛,但找不到任何有用的东西。请帮忙!
【问题讨论】:
-
您需要 64 位库。见:stackoverflow.com/q/8433803/92837
-
这样可以让我成功连接到 32 位 Oracle DB 吗?
-
是的,应该这样做。
-
所以首先,我应该安装 64 位 .Net 框架来获取 64 位库?
-
您需要上面链接中提到的 64 位 ODP.net 库。
标签: c# .net oracle oracle11g oracle10g