Windows 11 ARM - Visual Studio IIS Express 崩溃

问题描述 投票:0回答:1

我有一个使用 Parallels 创建的 Windows 11 Pro(版本 22H2)64 位 ARM VM(版本 18.0.1 (53056))
我为 ARM 安装了 net core 5 和 6(SDK 和托管包)
我创建了一个新的网络核心 Web 应用程序,但是当我开始调试 IIS Express 时没有启动,事件查看器错误为:

模块 DLL 'C:\Program Files\IIS\Asp.Net Core 由于配置,无法加载 Module\V2 spnetcorev2.dll' 问题。当前配置仅支持加载构建的镜像 适用于 AMD64 处理器架构

我尝试更改应用程序 URL 端口号、删除 .vs 文件夹和 IIS 调试而不是 IIS Express

总是同样的错误

c# visual-studio iis-express windows-11
1个回答
0
投票

我写了一篇关于 Windows 11 ARM64 完整 IIS 和 ASP.NET Core 的非常详细的文章。但 IIS Express 的场景似乎有所不同。

当我有时间完成更多调查时,我会回去做出完整的答案。

到目前为止,为未来的读者提供了一些有趣的事实,

  1. C:\Program Files\IIS Express\iisexpress.exe
    是 ARM64X 可执行文件。
  2. C:\Program Files\IIS Express\Asp.Net Core Module\V2\
    下的ASP.NET Core模块文件是纯ARM64。
  3. 根据您发布的错误消息,
    C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll
    很可能是纯ARM64,而IIS Express工作进程似乎以x64运行。

您必须提供更多信息,例如您在此虚拟机上安装的具体内容,因为

  • .NET 5/6 没有 ARM64 支持,因此安装它们只会将 x64 位添加到
    C:\Program Files\IIS\Asp.Net Core Module\V2
    。这与 3 矛盾。我的猜测是您以某种方式安装了 .NET 7 位。
  • 同样有趣的是,为什么 IIS Express 工作进程尝试从
    C:\Program Files\IIS\Asp.Net Core Module\V2
    加载 ASP.NET Core 模块位。这是没有意义的,就像你读到
    C:\Program Files\IIS Express\AppServer\applicationhost.config
    (VS 创建所有其他配置文件的模板)它默认指向
    C:\Program Files\IIS Express\Asp.Net Core Module\V2
    一样。在遇到这个问题之前,一定有什么事情你没有透露。

您也没有提及您正在使用的 Visual Studio 版本。这也可能会导致问题。

© www.soinside.com 2019 - 2024. All rights reserved.