在64位电脑上以32位模式运行Oracle客户端我刚刚从32位的Windows7桌面迁移到64位Windows7笔记本电脑。我们正在开发一个C#程序,一个解决方案中包含大约60个项目。尝试构建时出现以下错误:尝试加载Oracle客户端库引发了BadImageFormatException。在安装了32位Oracle客户端组件的情况下以64位模式运行时会出现此问题显然,该错误很容易解释,我正在尝试让我的整个解决方案以32位模式加载。我已经完成了每个项目并将目标平台设置为x86,但我仍然收到此错误。我在谷歌上搜索过,看到了无数种不同的方法,但我似乎无法弄清楚这一点。确保我的项目在64位计算机上以32位模式运行的最佳方法是什么?我正在使用VisualStudio2008。我目前正在考虑降级到32位,但我真的很想避免这样做。我发现即使你在64位机器上运行,你也必须安装32位Oracle客户端(你可以从他们的网站下载安装程序)。此外,在讨论期间,人们在谈论32位模式等。这里是您可以检查/设置IIS7托管应用程序的方法。你不应该改变它,但我在这里添加它是为了完整性/未来参考。您必须将主.exe文件更改为仅在32位中运行。您可以在VisualStudio中执行此操作——只需将平台目标从“任何CPU”更改为“x86”。如果这不可能,请使用corflags.exe强制现有的exe成为32位应用程序。我已经为这个问题苦苦挣扎了几个月,终于解决了。我认为所有帖子都有帮助,但我缺少了一块。我没有为用户DSN或系统DSN设置OracleODBC实例。我正在使用Windows8机器。所以对我来说,我必须进入常规窗口搜索并键入ODBC,然后打开ODBC数据源管理器(32位)。检查用户DSN选项卡或系统DSN选项卡上是否有MicrosoftODBCforOracle设置。如果没有,请单击添加并选择MicrosoftODBCforOracle。填写要单击的数据源的信息,然后单击“确定”。确保重新启动计算机,这最终对我有用。希望这对你们中的一些人有所帮助。就我而言,我的机器上安装了64位Oracle客户端,但仍然出现相同的错误。因此,我分析了在我的应用程序中转到应用程序右键单击转到->属性->Web选项卡,如果您使用的是本地IISWeb服务器,则取消选中“使用IISExpress”选项。问题已经解决了。您必须将主.exe文件更改为仅在32位中运行。您可以在VisualStudio中执行此操作——只需将平台目标从“任何CPU”更改为“x86”。https://msdn.microsoft.com/en-us/library/ms185328.aspx以上是C#学习教程:在64位电脑上以32位模式运行Oracle客户端分享全部内容,如果对大家有用,需要了解更多C#学习教程,希望大家多多关注-本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
