C#在64位操作系统上连接Oracle的问题和解决方案
来源:互联网 发布:如何在mac上安装jdk 编辑:程序博客网 时间:2024/05/16 17:39
C#使用System.Data.OracleClient连接Oracle数据库。之前在WinXP上正常运行的程序移植到Windows 2008 x64上之后就连不上数据库了,错误信息如下:
尝试加载Oracle客户端库时引发BadImageFomatException。如果在安装32位Oracle客户端组件的情况下以64位模式运行,将出现此问题。
错误原因是原来WinXP机子上所安装的OracleInstantClient是32位,所以编译的程序所用的OracleClient也是32位的,从而导致兼容问题。当然,如果在64位操作系统上重新安装64位的Oracle客户端再重新编译程序也是能解决问题的。这里我们介绍一种简单的方法来移植程序。
实际上,System.Data.OracleClient所指向的是PATH环境变量下的oci.dll。因此,我们只要让程序能够找到64位的oci.dll就可以了。方法如下:
1. 下载instantclient-basic-win-x86-64-11.1.0.7.0.zip,并解压,如C:/instantclient-basic-win-x86-64-11.1。
2. 在系统的环境变量PATH中加入以上路径。
之后再运行程序,程序会依照PATH路径寻找oci.dll,如果遇到32位的oci.dll会自动略过,找到64位的oci.dll就能连接上数据库了。
- C#在64位操作系统上连接Oracle的问题和解决方案
- C#在64位操作系统上连接Oracle的问题和解决方案
- C#在64位操作系统上用X86方式连接64位Oracle的问题和解决方案
- C#,delphi7在64位操作系统上连接Oracle 11g的问题和解决方案 BadImageFormatException
- Sqlite在32位和64位Windows操作系统上运行的问题
- 64位操作系统下连接使用Oracle的问题汇总
- pb程序在64位操作系统上使用Instant Client 连接oracle数据库
- PL/SQL Developer在64位操作系统上通过instantclient连接到oracle数据库
- 在64位机器上使用plSQL连接Oracle的问题(SQL*Net not properly installed)
- 在64位机器上使用plSQL连接Oracle的问题(SQL*Net not properly installed)
- Windows 64位操作系统和32位操作系统在注册表上的有一点不一样
- libcurl在centos6.4 64位操作系统上不支持https的解决方案
- Oracle 在64位机器上使用plSQL连接Oracle的问题(SQL*Net not properly installed) 转载
- 在64位操作系统上运行32位的程序
- 在64位操作系统上运行32位的程序
- ORACLE10g在64位操作系统上不能登录问题
- 在64位Win2008上面安装P/LSQL工具不能连接Oracle服务器的解决方案
- IBM MQ出口程序在64位windows操作系统上遇到的问题
- BSD和SystemV
- Java String StringBuffer and StringTokenizer
- Xwindow
- Set up Project in BF
- ocx数字签名(http://d.download.csdn.net/down/582304/jianghuaz)
- C#在64位操作系统上连接Oracle的问题和解决方案
- 深入理解typedef
- ASP生成html的新方法
- 导致在Debug下没有异常在 Release 下却出现异常的代码
- 网奇Iwms5.0破解版,网奇Iwms5.0完整去版权版(后台+前台)商业使用,请购买正版!
- mov 和 lea 的区别
- 《海量数据库解决方案》读后感
- 指向数组的指针的解析
- 汇编解析.