我正在运行64位Windows 7,Studio 2012,并且不完全理解以下行为:
当将站点部署到IIS时,我必须在App中“启用32位应用程序”才能工作。也许这是在Visual开发服务器中自动完成的。
是Visual开发服务器只是将我的站点作为32位在幕后运行的,还是这里有更深入的工作呢?
发布于 2013-03-28 15:19:16
是的,您的web服务器正在以32位应用程序的形式运行您的站点.
发布于 2013-03-28 15:32:47
在IIS中启用“32位应用程序”将启动w3wp进程的w3wp版本。
AnyCPU是一个方便的特性,由.NET提供,可以决定应用程序启动时选择哪种处理器体系结构。这是可能的,因为.NET应用程序不编译到x86/x64机器代码,而是编译到中间语言。启动应用程序时,它会在幕后编译成x64或x86机器代码。
然而,非.NET应用程序通常直接编译为目标系统的机器代码。此外,对于x86和x64,COM服务器必须在不同的注册表分支中注册。
由于您只有32位兼容服务器(DLL),这将导致您所描述的情况:
BadImageFormatException
。https://stackoverflow.com/questions/15685555
复制相似问题