Run Hyper-V and VirtualBox on Windows 10

I have been using VirtualBox for long time and have setup quite a few VMs for development and testing purposes. I upgraded to the Windows 10 Pro for my main work laptop, and began working with Hyper-V, which is available on a client OS since Windows 8.  Since I use virtualization to do software testing as well development work on daily basis, I was eager to see what Hyper-V could do. Hyper-V have impressed me so far.  It performs well and stays out of my way when I’m not using it.

However, as I have a lot of my previous work in VirtualBox, and rather than try to make all the old VMs work with Hyper-V, it made more sense to continue using them on the original platform (VirtualBox).  The challenge is that VirtualBox and Hyper-V cannot run at the same time.  Only one hypervisor can run at a time, and since Hyper-V runs all the time, VirtualBox always fails as it only runs when launched.

The workaround (there’s always a workaround, isn’t there?) is to disable Hyper-V when you want to run VirtualBox.  I found a few different ways on the web to accomplish this, including altering the registry, and running a command.  But the only one I found that worked involved changing the boot configuration using bcdedit. 

If you run bcdedit with no arguments, you should see a property called hypervisorlaunchtype.  This will be either set to off or auto.

To disable Hyper-V in order to use VirtualBox, open a command prompt as administrator and run the command:

bcdedit /set hypervisorlaunchtype off

You’ll need to reboot, but then you’ll be all set to run VirtualBox. To turn Hyper-V back on, run:

bcdedit /set hypervisorlaunchtype auto

and then reboot.