如何让IIS Express使用64位第三方DLLS启动MVC3 Web应用程序

时间:2012-05-24 23:11:27

标签: asp.net-mvc-3 c#-4.0 iis-express

我在MVC3 Web应用程序中引用了一个DLL。 它编译成功。 MVC3项目作为任何CPU配置属性运行。 我启动了IIS Express 7.5,我一直看到DLL缺少其依赖项异常。

然后我创建了一个Windows应用程序并引用了DLL,它工作正常。 所以我意识到这与IIS Express设置有关。

Dll是64位。 你能指导我吗

3 个答案:

答案 0 :(得分:3)

IIS Express 8有64位和32位版本,它们都安装在64位机器上 有关如何以64位模式运行IIS Express,请参阅this question,然后附加到进程以进行调试。

答案 1 :(得分:2)

查看此question的答案。 IIS Express 7.5只是一个32位应用程序,因此无法使其与64位DLL一起使用。 Visual Studio开发服务器也是如此。

您必须在完整版本的IIS中托管您的网站才能运行。您可以通过在项目属性的Web部分中选择“使用本地IIS Web服务器”来设置它。

答案 2 :(得分:2)

IIS Express 7.5仅作为32位进程运行。要运行64位应用程序,您应该使用完整版本的IIS。

  1. 确保您的MVC应用程序的构建配置设置为“Any CPU”。
  2. 并确保您的应用程序应用程序池设置为以64位模式运行。运行以下命令来执行该操作

    appcmd set apppool /apppool.name:/ enable32BitAppOnWin64:false