您的位置:首页 > 数据库 > Oracle

Oracle.DataAccess.dll、system.data.oracleclient.dll在64位运行问题

2016-06-15 19:09 579 查看
关于在32位开发的程序在64位运行,估计大家都有碰到过,这里抛砖引玉一下向大家学习一下更好的方案。
以C#连接oracle为例,目前用的较多的就是用这个dll,使用OracleConnection、OracleCommand、OracleDataAdapter等这些类来完成对数据库的读写。

而对于这两个dll,在32和64位上老是会碰到不兼容的问题。
比如会遇到:
未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。
或者
尝试加载 Oracle 客户端库时引发 BadImageFormatException
试图加载不正确的程序


查了一些网上童鞋的做法,要换oracle版本,换驱动版本等,由于条件问题没有一一核实。

就用了简单的处理办法,让程序强制运行在32位上。
具体做法,
针对CS程序,在设置生成属性的时候,选择目标平台为x86;
BS程序,设置应用程序池时,启用32位应用程序选项时,选择true。

这个方法虽然最终没有根本解决问题,但是紧急情况下保证了程序的正常运行,也是不错的办法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: