.net 让我抓狂:)(64 位操作系统在 32 位 HTTP 500 上开发)

.net 让我抓狂:)(64 位操作系统在 32 位 HTTP 500 上开发)

我刚买了一台新机器,它是 64 位的,但是我仍然有一个使用 .net 2.0 在 32 位环境中编写的应用程序。我对代码做了一些更改并尝试调试,结果得到:

HTTP Error 500.0 - Internal Server Error
Calling LoadLibraryEx on ISAPI filter

“C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_filter.dll”失败”

所以我拼命地在 Google 上搜索,结果它告诉我要重新注册 IIS。我这样做了好几次,但都无济于事。我还检查了此应用程序的应用程序池,发现它设置为使用错误的 .net 版本 (4.0)。所以我将其更改为使用 2.0。重新启动 IIS 尝试运行应用程序,但出现相同的错误消息。

如果我进入 IIS 管理,右键单击站点名称,选择“管理应用程序”->“高级设置...”,我会在此处截取屏幕截图:

在此处输入图片描述

如果我单击应用程序池部分,它会显示以下内容:

在此处输入图片描述

所以我不确定我做错了什么...我查看了 c:\windows\microsoft.net 内部,有 2 个文件夹“Framework”和“Framework64”,我假设前一个是 32 位的:

在此处输入图片描述

最后,我要查看的是 IIS 管理中的“ISAPI 和 CGI​​ 限制”。它们的设置如下:

在此处输入图片描述

我再次在运行 Windows 7 的 AMD64 位系统上运行。我安装了所有各种框架,但这个特定的应用程序是一个 asp.net 2.0 应用程序。任何帮助都值得感激...

答案1

哇,多亏了这个,我才能让它工作:http://www.codertakeout.com/v/35674/4O9BY 我必须在应用程序池中启用 32 位应用程序,并为 32 位版本的 ASP.net v2.0 启用 ISAPI CGI 限制

全部令人困惑的东西!

相关内容