Oracle客户端VS组件,解决连接oracle报错 尝试加载Oracle客户端库时引发BadImageFomatException。如果在安装64位Oracle客户端组件的情况下以32位模式运行,将...

最近遇到一个.NET连接Oracle的一个错误,其主要原因是换了一台电脑,在新电脑上运行以前的项目出现了的一个错误,工作环境为vs2017+Oracle 64位,win10系统

f2c5ac43fc64aa7087531141c9967739.png

这个错误头疼了一天,找了好多博客去解决这个问题

7688636abbc5c7e2e17c34e33f29f0b8.png

在这主要是总结一下本人的解决思路与方法。

1.查看自己的Oracle客户端是否安装成功(我只安了客户端,没有安装服务端),安装时一定要是否是以管理员方式运行。查看注册表和环境配置是OK的。

2.点击安装到的文件夹,右键属性,点击选项卡上安全选项,添加一个组或域名(见下图),

f2d3916eaba839c0f48cf7e51f885569.png

3.现在可以先把项目发布到IIS上运行,如果还是报这个错。更改应用程序池中的项目—高级设置—启用32位应用程序(如果是要运行32位的设置true,因为我的是64位的所以设置为false)

60c0e2df5c49fd3a24685cb84fc85642.png

4.运行成功后,那Oracle配置应该是没有什么问题了,在vs上调试如果报的错误还是这个就把vs上的选项web项目,把使用IIS Express 64位版选中。

c8b11b8b0ee4c8699942e7f1dbbca2e8.png

补充:操作过程中遇到了一点其他的错误也提说以下我的解决方案

1.需要安装客户端高版本问题

7461b9931512060f1ea5a514dea01da2.png

解决方案:这个是因为没有找到你配置Oracle环境下的oci.dll文件导致,安装完Oracle客户端之后在文件中找到这个oci文件,把环境配置到这个文件的目录上。

2.无法解析指定的连接标识符

016250ac419ae08d7f70a7859c8d6397.png

解决方案:错误是因为项目中的配置文件去找连接标识符,因为是新安装的Oracle忘记配置了的原因,在这个文件中配置一下连接标识符(见下图)。

1c621ed8c12deebfc7458c07de98e905.png

增加方法:

最近又遇到这个情况之后把之前用的方法都试了一下,不过环境有一些不同是vs201和Oracle11g客户端+服务器。以上方法排除一边之后还是不可以使用,让后百度找到另一种方法测试了一下完美解决了此问题。

流程为:下载instantclient_11_2.zip(自行百度)然后放进你安装Oracle的路径下例如:G:\app\Administrator\product(这是我电脑安装Oracle的路径)

然后在环境变量中配置path,添加instantclient_11_2的路径例如:

a82983bae47baa7aa0a629d6fe3b4089.png

然后在环境变量中添加一个变量,变量名:TNS_ADMIN 变量值:G:\app\Administrator\product\11.2.0\client_1\network\admin(这个是Oracle安装文件的地址,会有不一样,我的是配置的是客户端的文件夹,tnsnames.ora找到放这个文件的文件夹就可以了)

以上就是我解决这个问题的思路,如果过程中有不对的地方,请大佬指出

b0aa5f8b2ef56b4765438e13c43474c3.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值