How to Restore Hyper-V Virtual Machine from VHDX-File in Windows 10 or Server

Today we will explain how to cope with a quite common problem – your Hyper-V virtual machine is not working and you face an error when you try to start it. In my case I faced the following error message:

Error applying SCSI Controller changes
... failed to add resources to [virtual machine]. 
An unexpected error occurred: The specific network resource or device is no longer available. (0x80070037).

From this guide you will know how to recover your VM without reinstalling the operating system on it from a scratch. All you need to have is at least the virtual hard disk file (.vhdx).

ERROR Applying SCSI controller changes Hyper-V

Why Virtual Machines Stop Booting

There are several possible factors that may may stop your VM from booting. Among them the following changes:

  • you moved some files related to the current virtual machine;
  • changed a drive letter;
  • reinstalled the OS on your physical management computer;
  • etc.

I first face the issue when I move the folder with VHDX-files to another disk.

How to Connect a Virtual HDD File and Restore your Hyper-V Virtual Machine

Follow the steps: 

  • Launch Hyper-V Manager: launch Hyper-V Manager Windows 10
  • Right-click on your management host name and select New > Virtual machineadd a new virtual machine Hyper-V Manager
  • Press Next on this step: new virtual machine press next
  • Now give a name to your VM and click Next:choose a name for a new VM
  • Select the correct Generation for your virtual machine: select Hyper-V Generation for VM 

    Attention! You should select the exact same option as you selected when you set up the VM for the first time otherwise it won’t work. But don’t worry – if you do make a mistake, you will always be able to create another virtual machine from a scratch and select the correct generation. Just delete the current VM and start with the 1st step of this guide again. And will be just fine! Ok, let’s return to the recovery of your Hyper-V guest machine.

  • Specify the amount of RAM. You can allocate the amount you wish – no need to remember how much RAM the machine had before you destroyed it. I recommend to assign at least 4 GB for Windows 10. 
  • Select a network switch and click Next. It is also not so important cause you will be able to change this setting at any time later.
  • And here is the step that will actually bring your broken virtual machine back to life! Select Use an existing virtual hard disk than click Browse and select the vhdx-file belonging to your VM. Click Next afterwards to proceed to the next step:
    use an existing virtual hard disk file for new machine

    Restore your virtual machine from vhdx-file on Windows 10 / Server

  • Click Finish
  • Now you should be able to see your “old new” machine in the Hyper-V Manager. Start it! It should boot and work fine! VM in Hyper-V Manager

A Few Tips

As all virtual machine’s settings (except those you modified) are now set by default, you may want to disable annoying automatic checkpoints now 🙂

As I said above, if the VM won’t boot, you are likely to have selected a wrong generation. You should create a new one from a scratch and try to choose a different generation. 

The Conclusion

As you can see, it is very easy to restore your destroyed Hyper-V virtual machine if you moved its files to another location or reinstalled Windows 10 or Windows Server on your physical PC. There are only a few things that matter:

  1. to have a non-corrupted virtual hdd file;
  2. to select the correct generation of guest machine.

Of course, if you are trying to launch your virtual machine on another physical computer you additionally need to ensure that:

  1. the management host machine’s CPU supports Hyper-V virtualization;
  2. the virtualization is enabled in the BIOS.

Did you manage to restore your virtual machine from an existing VHDX-file and fix Error applying SCSI Controller changes? Please, drop a line in the comments section.

Leave a Reply

Your email address will not be published.