问题来源:
我要把windowsXP 32位系统上的VS2010项目 放在 windows server 2008 64位的服务器上运行,在服务器上装的64位Oracle,用PLSQL链接需要装一个32位的客户端(instantclient-basic-nt-11.2.0.2.0 解压版的)才可以链接,PLSQL可以链接了,我以为配置好了数据库,然后将项目放在服务器上运行,后来发现日志里面提示错误信息:尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。 经过在网上查找原因终于解决了问题,在此做些总结
解决方法:
1. 网上流传的一种方法,(解决方案——属性——目标平台指定平台改成X86),可能这种方法是可以的,但是不适合我
2. http://www.cnblogs.com/joey0210/archive/2012/08/15/2640248.html 这哥们的解决方法也是可以的,下载一个安装包win32_11gR2_client.zip,这个安装包大约600多M,有点大,和上面我解压版的应该是一样的功能,就在我将要安装的时候,一句话点醒了我,请看第三种解决方法
3. 系统的path中,将OracleInstantClient的路径设置在oracle的路径之前就可以了,这正是安装版和解压版的区别所在(系统变量),将 D:\app\instantclient_11_2 放在Path中 Oracle路径的前面,完美解决
写的可能有错误或者不对的地方,欢迎留言评论
推荐一个男装店铺