在 Windows 8 或 Windows Server 2012 上安装 ASP.NET 时,WoW64 支持组件卸载失败

本文可帮助你解决在 Windows 8 或 Windows Server 2012 上安装 ASP.NET 时,WoW64 支持组件卸载失败的问题。

原始产品版本: Windows 8、Windows Server 2012 Standard、Windows Server 2012 Standard
原始 KB 数: 2736294

现象

假设出现了下面这种情景:

  • 你有一台运行 Windows 8 或 Windows Server 2012作系统的 64 位计算机,并且安装了 Internet Information Services (IIS) 8.0 和 ASP.NET。
  • 尝试使用“删除角色和功能向导”卸载 WOW64 子系统,然后重新启动计算机以完成卸载。

在此方案中,计算机完成重新启动后,你会注意到 WOW64 子系统仍然存在,并且无法卸载。

原因

出现此问题的原因是 32 位版本的 ASP.NET 无法卸载,导致 WOW64 卸载回滚。 这是因为 ASP.NET 自定义作是 32 位和 64 位的不同可执行文件;当 WOW 64 子系统卸载时,它会导致 32 位 ASP.NET 卸载,这将调用 32 位版本的自定义作。

解决方法

若要解决此问题,请执行以下步骤:

  1. 卸载 ASP.NET。
  2. 通过在 服务器管理器 中的“删除功能”向导中禁用 WoW64 支持来卸载 WOW64 子系统。
  3. 重新安装 ASP.NET。

重现步骤

  1. 安装 Win8 服务器 OS。
  2. 启动“服务器管理器”。
  3. 完全安装 IIS。
  4. 再次启动服务器管理器。
  5. 选择“ 管理\删除角色和功能 ”以打开 “删除角色和功能向导 ”对话框。
  6. 继续向导,并从“删除功能向导”页中禁用 WoW64 支持
  7. 选择“ 删除功能 ”按钮,然后完成向导。
  8. 应重启 OS 以完成卸载。

预期结果:

重新启动后卸载成功

实际结果:

重新启动后卸载失败

备注

如果未从步骤 3 安装 IIS,则无法先卸载 WoW64 支持功能,且没有问题。