Windows Phone 8 的模拟器是运行在 Hyper-V 平台上的,但是开启 Hyper-V 以后 VMware 虚拟机却无法使用了,虽然可以修改启动参数临时关闭 Hyper-V,但是每次都要重新启动,体验真的号差,因为这个原因我好久都没有开发和更新 Windows Phone 应用了。今天看到一个方法可以让 VMware 虚拟机运行在 Hyper-V 环境之下。
Since I’m working on some Windows Phone 8 Applications, I’ve installed Windows Phone 8 SDK which is shipped with the Windows Phone Emulator. The Emulator runs as Hyper-V virtual machine.
My (Linux)-Developing Servers are VMware machines. I’ve googled some hours to let both virtualizing systems run parallel (and booted up parallel the vms!).
Here’s a Step-by-Step List to let you run both together on the same host system:
You have not installed VMware and Hyper-V on the host yet
- Install VMware Workstation first.
- Install the Windows Phone SDK which enables the Hyper-V Role on your host
- Go to your Virtual Machine Storage place and open the *.vmx File
- Add the line:
vmx.allowNested = "TRUE"
You have already installed Hyper-V, but not VMware
- Deactive the Hyper-V Role
- open PowerShell or console and stop the Hyper-V role with:
bcdedit /set hypervisorlaunchtype off
- Restart your computer
- Install VMware Workstation
- Activate Hyper-V role again
- run
bcdedit /set hypervisorlaunchtype auto
on console or PowerShell - Restart your computer
- run
- Add the line
vmx.allowNested = "TRUE"
to your VMware virtual machine *.vmx File
After this steps you can run the Windows Phone 8 Emulator and VMware virtual machines at the same time on the same host.
References
- Start/Stop the Hyper-V role [windowspro.de / German]
- Edit the vmx File [communities.vmware.com / English]