我有一个包含32位DLL的ASP.NET 3.5应用程序。它在Windows XP,7和10上运行良好(并且已经运行了好几年)。我添加了对Windows 2012、2012 R2和2016的支持。它在2016上运行,但在2012 R2上不运行。
在第一次调用DLL时,发生以下错误:
BadImageFormatException:尝试使用以下命令加载程序 格式错误。 (HRESULT的异常:0x8007000B)
对所有经过测试的OS使用相同的构建和安装脚本。每个OS都在同一台计算机上的VM上,因此所有OS的硬件都是相同的。对于每个操作系统:
我已经尝试过针对该问题的帖子中的所有建议,但没有任何效果。有什么想法吗?
答案 0 :(得分:1)
在任务管理器中再次检查您的应用程序的W3WP.exe进程正在运行32位,并且实际上是默认应用程序池正在尝试加载DLL。此错误消息几乎可以肯定意味着64位进程试图加载32位DLL。