.net Oracle试图加载格式不正确的程序

.net Oracle试图加载格式不正确的程序,.net,vb.net,windows,oracle,publish,.net,Vb.net,Windows,Oracle,Publish,这是一个场景: 我有一个ASP.NET应用程序,它具有最新的Oracle DDLs(64)位 我正在Windows 7计算机上本地运行它。它运行良好 当我从Windows7机器发布到运行IIS的服务器时,它会给我这个错误 当我从WindowsXP机器上发布相同的应用程序时,它运行良好 我检查了服务器,它有最新的Oracle。64位。我在GAC登记了 有什么想法吗?问题是,您运行的某些代码的编译方式与其他代码不同。如果您的任何组件为32位,而oracle dll为64位,则会出现此问题。还要确保

这是一个场景:

我有一个ASP.NET应用程序,它具有最新的Oracle DDLs(64)位

我正在Windows 7计算机上本地运行它。它运行良好

当我从Windows7机器发布到运行IIS的服务器时,它会给我这个错误

当我从WindowsXP机器上发布相同的应用程序时,它运行良好

我检查了服务器,它有最新的Oracle。64位。我在GAC登记了


有什么想法吗?

问题是,您运行的某些代码的编译方式与其他代码不同。如果您的任何组件为32位,而oracle dll为64位,则会出现此问题。还要确保你的应用程序池设置正确。如果不运行32位代码,请确保“启用32位应用程序”设置为false

编辑

你说的是“Oracle dll*s*”。使用
corflags
并确保它们都是x64。并确保服务器上的Oracle客户端也是x64。您可能有32位客户端,并尝试通过64位ODP.NET进行连接,这是一个问题


我会优先检查Ora客户端是否与Ora Dll的格式相匹配

64位操作系统是否出现故障?Windows 7也可以是。不,不是这样。我确定它是64位的。我的朋友,任何时候你“试图加载一个格式不正确的程序”——这是位不兼容。您是否在使用的DLL上运行了
corflags
?在服务器IIS中,选中“启用32位应用程序”为false。嘿,T.S.你好吗?。我也有同样的问题,尝试了所有的方法,但都不管用。你能看一下吗?