Visual studio 2010 使用Oracle客户端64位和Visual Studio 2010时出现BadImageFormatException!
我们的一名开发团队成员出错 尝试加载oracle客户端库引发了BadImageFormatException 看来 当以64位模式运行并安装了32位Oracle客户端组件时,会出现此问题 但是我配置了系统-以下是规范:Visual studio 2010 使用Oracle客户端64位和Visual Studio 2010时出现BadImageFormatException!,visual-studio-2010,windows-7,oracle11g,windows-7-x64,oracleclient,Visual Studio 2010,Windows 7,Oracle11g,Windows 7 X64,Oracleclient,我们的一名开发团队成员出错 尝试加载oracle客户端库引发了BadImageFormatException 看来 当以64位模式运行并安装了32位Oracle客户端组件时,会出现此问题 但是我配置了系统-以下是规范: Windows 7 64位 Visual Studio 2010高级版 Oracle客户端11g R2 64位作为运行时安装 有什么想法吗?最近在64位O/S上运行Visual studio时,我见过几次这种情况。一个简单的解决方法是在64位开发机器上安装32位客户端 尊敬的
- Windows 7 64位
- Visual Studio 2010高级版
- Oracle客户端11g R2 64位作为运行时安装
有什么想法吗?最近在64位O/S上运行Visual studio时,我见过几次这种情况。一个简单的解决方法是在64位开发机器上安装32位客户端
尊敬的Pete,很抱歉添加第二个答案,但是如果您在同一台机器上安装了64位和32位客户端,您也可能会遇到此问题 安装了两个客户端
C:\oracle\product\11.2.0\client32Bit
C:\oracle\product\11.2.0\client64Bit
控制path环境变量。哪个Oracle客户端是第一个,它是在另一个客户端之前加载的
echo %PATH%
XXXX;C:\oracle\product\11.2.0\client64Bit\BIN;XXX
由于我的64位Oracle客户端是路径中的第一个,VS.NET尝试将其用于Oracle连接,并引发坏映像异常
set PATH=C:\oracle\product\11.2.0\client32Bit\BIN;%PATH%
REM Visual Studio 2008
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"
REM Visual Studio 2010
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"
在此之后,您可以连接oracle。当然,您可以将32位客户机放在路径的第一位,但对于其他应用程序,我更喜欢将64位客户机放在32位之前。要快速简便地解决此问题,您只需遵循以下步骤即可:
Eng.Nawaf H.Bin Taleb.我将IIS7中我的应用程序池中的启用了32位的支持更改为禁用。这对我有用。我觉得很容易。
干杯:)我也遇到了同样的异常,我发现这是在升级到MVC版本高于2.0时发生的,就我的MVC4.0而言
在MVC2.0中创建一个新项目解决了这个问题 如果您想使用64位,请在此处查看我的答案:
如果您满足于32位,只需安装32位版本的Oracle Data Access组件即可。由于Visual Studio的开发服务器是32位的,所以您不会有任何问题。升级到Windows 7后,我遇到了相同的错误。我通过在VisualStudio属性页的Build选项卡中将平台目标更改为x86解决了这个问题。试试这个 我花了将近4个小时来找到BadImageFormatException问题的解决方案 场景: VS 2012,我第一次尝试将实体模型添加到Oracle数据库中。我知道为oracle数据库添加模型有两个步骤:
然后,您就可以使用model:)在Visual Studio 2013和64位Oracle客户端(11和12版本)中也可能会遇到同样的问题。我的解决办法是: a)桌面项目。项目属性>生成>禁用“首选32位”复选框
b)ASP.NET项目或网站。主菜单>工具>选项>项目和解决方案>Web项目>启用“将64位版本的IIS Express用于网站和项目”复选框。我遇到了相同的问题,Muru共享的解决方案对我有效:
只要安装ODAC和如果您是通过Visual Studio运行该应用程序,则通过访问Visual Studio中“工具->选项”菜单中“项目和解决方案”下的“Web项目”选项,将“使用64位版本的IIS Express用于网站和项目”复选框设置为选中状态。您是否已升级到最新的ODAC Clent?它与Visual Studio 32位有什么关系吗?也许-我不熟悉Visual Studio,但这正是解决我问题的方法。谢谢您的帮助。是的,但您还需要确保您的应用程序正在使用32位应用程序池。打开IIS管理器并单击池上的“高级设置”,然后单击“启用32位应用程序=True”。我们尝试在Windows Server 2012R2上的不同Oracle家庭中安装32位和64位客户端,但结果并不理想,我们被迫卸载这两个客户端,然后重新安装64位客户端。花了几天时间让一切恢复正常。在我的情况下,情况正好相反:将目标平台更改为x64解决了问题。嗨。。谢谢你。。答案(b)对我有用。。我讨厌安装32位oracle和64位。。。这是为Visual Studio 2015准备的谢谢,我在Windows 10上运行了它。我已安装WINDOWS.X64_193000_客户端。使用Visual Studio 2015 C#应用程序,我的应用程序具有平台目标x64。仅启用“将64位版本的IIS Express用于网站和项目”复选框,我的.NET web应用程序就可以正常工作,如果取消选中此复选框,它将无法工作。