运行 Win10 VMWare 中的 WinPhone 模拟器

Running WinPhone emulator inside Win10 VMWare

我有一个 Win 8.1 托管 OS,运行 VS2013,可以在模拟器中测试我的 WinPhone 应用程序。主机OS是Win7 Pro。

我将托管 OS 重新安装到 Win10 和 VS2015,现在当我尝试使用模拟器测试我的应用程序时出现 Hypervisor not enabled 错误:

我已尝试禁用并重新启用 HyperV(在托管 OS 中),按照:

Unable to start the Windows Phone Emulator

但是没有用。

我也试过打开托管计算机的 BIOS 设置 (PhoenixBIOS),但是没有我认为有帮助的选项。

我还能做些什么来让它工作?

(为什么我不先备份虚拟机?!)

进入工作站 运行 提升模式下的 Powershell(运行 作为管理员) 和 运行

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All

停止工作站并转到 settings/processors/Virtualization 引擎并设置:

  • 首选模式:自动
  • 禁用二进制翻译加速:未选中
  • 虚拟化英特尔 VT-x/EPT 或 AMD-V/RVI:选中
  • 虚拟化 CPU 性能计数器:选中

启动工作站和 运行 lusrmgr.msc 并检查您的帐户是否在 Hyper-V 管理员组中

检查 HV 主机服务和 Hyper-V 虚拟机管理已启动并且 运行正在运行的服务。

如果 Error 31: A device attached to the system is not functioning 按照 here 中的步骤操作。

The fix is:

  • Shut down Workstation.
  • Open the registry (Start > Run > regedit).
  • Browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\hcmon.
  • Create a new key called Parameters.
  • In Parameters, create a new DWORD value entry named DisableDriverCheck, and then set the value to 1.
  • Reboot

Appears this issue is for Windows 7 host. The fix worked on the few I tried.

如果错误 31 仍然出现 运行 在提升模式下的工作站命令提示符中(运行 作为管理员)并键入

bcdedit /set "{current}" hypervisorlaunchtype auto

然后重新启动工作站。

再次检查 HV 主机服务和 Hyper-V 虚拟机管理已启动并且 运行正在运行的服务。

转到网络和共享 Center/Change 适配器设置并禁用并重新启用名称为以下的所有适配器:vEthernet(内部以太网端口 Windows Phone 模拟器内部开关)

现在您应该 运行 模拟器... ;)

  1. 尝试打开 VM 的 .vmx 并添加:

    hypervisor.cpuid.v0 = “FALSE”

  2. Select Virtualize Intel VT-x/EPT or AMD-V/RV1 在您的 VM 设置上。