我有一个P / Invokes 32位DLL的ASP.NET应用程序。
当我在64位服务器上部署它时,我收到错误“尝试加载格式不正确的程序”。
然后我根据给定here的指令将IIS配置为运行32位。仍然得到相同的错误。
这可能是什么问题?
答案 0 :(得分:2)
只有允许 32位应用程序运行,但它不会使任何实际以32位模式运行。
要使用32位dll,您的Web应用程序必须以32位模式运行,这可以通过将IIS切换为以32位模式运行来完成。但是,根据服务器上运行的其他Web应用程序,这可能实际上不可能,因为所有 Web应用程序必须以32位模式运行。您链接到的页面上有一个链接,其中包含有关在32位模式下运行IIS的含义的更多信息。
如果无法在32位模式下运行IIS,则需要64位版本的dll才能使用它。