在 VirtualBox 中启动 VM 后,我立即收到一个包含以下错误消息的错误框:
调用 WHvSetupPartition 失败:ERROR_SUCCESS (Last=0xc000000d/87) (VERR_NEM_VM_CREATE_FAILED)。
我正在运行 Windows 10 Professional,版本 1903,并已确认未启用 Hyper-V。
在 VirtualBox 中启动 VM 后,我立即收到一个包含以下错误消息的错误框:
调用 WHvSetupPartition 失败:ERROR_SUCCESS (Last=0xc000000d/87) (VERR_NEM_VM_CREATE_FAILED)。
我正在运行 Windows 10 Professional,版本 1903,并已确认未启用 Hyper-V。
optionalfeatures
在开始菜单中键入或Win+ R)。这是 Windows 10 v1903 中的一项新功能,它在后端使用 Hyper-V(即使在 Windows 功能中未启用),这使得该功能与 VirtualBox 不兼容。
根据这篇 VirtualBox 论坛帖子,有几个功能可能使用与 VirtualBox 不兼容的 Microsoft Hyper-V:
对我来说,只需禁用“虚拟机平台”并重新启动TWICE即可。
WSL 1 仍然有效。我不太确定 WSL 2,它目前在 Windows 预览体验计划中可用。
终于解决了问题。
通过导航到“打开或关闭 Windows 功能”。
重新启动机器两次,然后尝试在 virtualbox 中启动 vm。
就我而言,关闭Windows Sandbox和Hyper-V并重新启动我的 PC 数十次都没有用。我什至尝试重新打开这些功能,然后关闭,然后又重新启动了十几次。
起作用的是从Windows Security中的核心隔离中禁用内存完整性,可能是因为它使用虚拟化功能,就像 Hyper-V 和 Windows 沙箱一样。
现在我终于可以再次启动我的虚拟机了。
我也遇到过同样的问题,这是由于在给定时间我的机器上有一个旧版本(版本 6.0.22)。
为了解决这个问题,我去了Virtual Box 的下载页面,下载了适用于 Windows 主机的 6.1.16 版本并安装了这个更新的版本
然后,正如您在下一张图片中看到的那样,该错误消失了
需要禁用但不卸载 Hyper-V。我有时想维护 Hyper-V 功能,并可以选择在禁用 Hyper-V 的情况下重新启动到 Windows。
我在管理员powershell 提示符下运行了以下命令:
将 GUID 复制到下一个命令中:
按住按钮的同时单击重新启动并保持按住shiftshift
选择“其他操作系统”,您的“无 Hyper-V”选项就在那里。
如果要更改默认模式(启用或禁用 hyper-v),请运行
msconfig
并更改引导选项卡上的默认值。感谢Scott Hanselman启发了这篇文章。
您不需要禁用容器!这是基于本文的操作方法
当 Docker Desktop 运行时
当您当前不需要任何在您的系统上运行的 docker 容器时,通过右键单击任务栏右侧的图标来关闭 docker 桌面就足够了:
然后选择“退出 Docker 桌面”,VM 应该会再次运行。您甚至可以在此之后重新启动 Docker Desktop 并重新启动您的容器,而不会破坏 VM 或容器。
(当然,并非所有功能都得到保证,但值得一试。)
较新版本的 Virtual Box 可能在这方面做得更好(我的帖子是使用 VirtualBox 6.1 创建的)