Skip to content

Instantly share code, notes, and snippets.

@rahilwazir
Last active May 9, 2026 17:22
Show Gist options
  • Select an option

  • Save rahilwazir/69a750b70348459875cbf40935af02cb to your computer and use it in GitHub Desktop.

Select an option

Save rahilwazir/69a750b70348459875cbf40935af02cb to your computer and use it in GitHub Desktop.
Convert VMWare to Hyper-V (vmdk to vhdx)

VMDK to VHDX

Follow steps:

If you counter following error:

ConvertTo-MvmcVirtualHardDisk : The entry 1 is not a supported disk database entry for the descriptor.

In my case it was entry 4

Follow these steps:

  1. download and extract dsfok tools
  2. use dsfo.exe "c:\temp\disk2.vmdk" 512 1024 descriptor1.txt to extract the descriptor
  3. edit the descriptor file in Notepad++: comment the above mentioned line (as I added the extra single character (#) I also deleted one NULL character from the end to keep the file size of 1024 bytes (not sure if this is needed).
  4. use dsfi.exe "c:\temp\disk2.vmdk" 512 1024 descriptor1.txt to inject the descriptor back into the VMDK
  5. repeat these steps for the other disk (my VM has two .vmdk files)
  6. reissue the ConvertTo-MvmcVirtualHardDisk command
@brady1408

Copy link
Copy Markdown

If anyone comes here in the future and can't convert a disk due to a very generic

ConvertTo-MvmcVirtualHardDisk : Access to the path is denied.

This was caused by Sophos trying to prevent ransomware attacks, but Sophos did not trigger an alert it just silently killed the process.

Adding an exclusion for the folder C:\Program Files\Microsoft Virtual Machine Converter did the trick for me.

@lighterowl

lighterowl commented Sep 24, 2020

Copy link
Copy Markdown

The converter is no longer officially supported by Microsoft and the link available everywhere (download/details.aspx?id=42497) doesn't work anymore.
Fortunately, there's a Chocolatey package that contains a direct link to the installer. I mirrored it here.

@re-buurst

Copy link
Copy Markdown

@Xavery - thanks, you saved me today by hosting that package. I could not find it anywhere on the internet. All the links are 404

@rahilwazir

Copy link
Copy Markdown
Author

@Xavery - Thanks, I have updated the Gist.

@LarryAnglin

Copy link
Copy Markdown

Between steps 1 and 2 should be a step 'Run the downloaded installer'.

@bhavikgajera

Copy link
Copy Markdown

Software download Link is not available http://download.microsoft.com/download/9/1/E/91E9F42C-3F1F-4AD9-92B7-8DD65DA3B0C2/mvmc_setup.msi

If you know other link then please update it.

@rahilwazir

Copy link
Copy Markdown
Author

@bhavikgajera the downloadable link is working fine.

@JonathanVQP

Copy link
Copy Markdown

As of July 6, 2021, even with the MS Virtual Machine Converter, I could not convert my vmdx files to vhdx. I am using VMware Workstation 16 Pro (16.1.2 build-17966106).

@deathzombee

deathzombee commented Jul 24, 2021

Copy link
Copy Markdown

Software download Link is not available http://download.microsoft.com/download/9/1/E/91E9F42C-3F1F-4AD9-92B7-8DD65DA3B0C2/mvmc_setup.msi

If you know other link then please update it.

@bhavikgajera

in powershell run curl http://download.microsoft.com/download/9/1/E/91E9F42C-3F1F-4AD9-92B7-8DD65DA3B0C2/mvmc_setup.msi -o mvmc_setup.msi

@duli0810

Copy link
Copy Markdown

@sukesh-ak

sukesh-ak commented Aug 28, 2021

Copy link
Copy Markdown

@duli0810

Copy link
Copy Markdown

Use qemu and its easy single command-line for conversion.
https://cloudbase.it/qemu-img-windows/

Steps
https://gist.github.com/sukesh-ak/9a633c48ceefe9560b8f2eb5d8fcff72

Show, interesting.... did not know this method.
In reality it is similar to MVMC, with a single command after extracting the .ova

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "" -VhdType DynamicHardDisk -VhdFormat vhdx -destination ""

With "qemu" does not generate the error "is not a supported disk database entry for the descriptor." ?

@sukesh-ak

Copy link
Copy Markdown

Use qemu and its easy single command-line for conversion.
https://cloudbase.it/qemu-img-windows/
Steps
https://gist.github.com/sukesh-ak/9a633c48ceefe9560b8f2eb5d8fcff72

Show, interesting.... did not know this method.
In reality it is similar to MVMC, with a single command after extracting the .ova

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "" -VhdType DynamicHardDisk -VhdFormat vhdx -destination ""

With "qemu" does not generate the error "is not a supported disk database entry for the descriptor." ?

No it worked smoothly.. no errors pretty straight forward command.

@sukesh-ak

Copy link
Copy Markdown

This also works but due to some reason not working on Win11 after recent updates.
You can try on Win10, maybe it works there still.

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd --format vhd "disk001.vmdk" disk-OS-v2.vhd

@duli0810

Copy link
Copy Markdown

This also works but due to some reason not working on Win11 after recent updates.
You can try on Win10, maybe it works there still.

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd --format vhd "disk001.vmdk" disk-OS-v2.vhd

Cool... I'll test it.... thanks sukesh-ak !

@sakar97

sakar97 commented Sep 16, 2021

Copy link
Copy Markdown

Hi, Does qemu delete all the VMware environment dependencies tools also while converting .vmdk to .vhd? or it cloned exactly the same file in a different format?

@sukesh-ak

Copy link
Copy Markdown

Hi, Does qemu delete all the VMware environment dependencies tools also while converting .vmdk to .vhd? or it cloned exactly the same file in a different format?

Just converted the disk file format to new format. That's all.

@sukesh-ak

Copy link
Copy Markdown

@MathBernier

Copy link
Copy Markdown

I was looking forward for a straight solution, that did the trick! Thank you!

@GUTIERRES-RS

Copy link
Copy Markdown

For me it worked like this:

STEP 1 - Download and Install: http://download.microsoft.com/download/9/1/E/91E9F42C-3F1F-4AD9-92B7-8DD65DA3B0C2/mvmc_setup.msi

STEP 2 - Run power shell as administrator.

STEP 3 - PS> Import-Module 'C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1'

STEP 4 - PS> ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "D:\Virtual Machines\Windows 10 x64\Windows 10 x64.vmdk" -VhdType DynamicHardDisk -VhdFormat vhdx -destination "D:\Virtual Machines\Windows 10 x64\Windows 10 x64.vhdx"

Don't forget to check the syntax of commands and punctuation etc... And enjoy

@IchBinGROOT

Copy link
Copy Markdown

This all looks very promising, did anyone ever write a script that automates this process? I‘d like to install Whonix in Hyper-V but didn’t get it to work so far

@SkybuckFlying

Copy link
Copy Markdown

Does not work:

3.1 Command 1:

Import-Module 'G:\Tools\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1'

3.2 Command 2:

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "D:\Virtual Machines\Windows 11 (VM 4, Official, RAD Studio 11 Alexandria, Windows 11 Updated, Reactivated)\Windows 11 x64.vmdk" -VhdType DynamicHardDisk -VhdFormat vhdx -destination "G:\Virtual Machines\Windows 11 (VM 4, Official, RAD Studio 11 Alexandria, Windows 11 Updated, Reactivated, Converted to VHDX)\Windows 11 x64.vhdx"

Error:

ConvertTo-MvmcVirtualHardDisk : No suitable drive was found at path (D:\Virtual Machines\Windows 11 (VM 4, Official,
RAD Studio 11 Alexandria, Windows 11 Updated, Reactivated)\Windows 11 x64.vmdk).
Parameter name: path
At line:1 char:1

  • ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "D:\Virtual Machine ...
  •   + CategoryInfo          : WriteError: (Microsoft.Accel...nversionService:DriveConversionService) [ConvertTo-MvmcVi
     rtualHardDisk], DriveNotFoundInPathArgumentException
      + FullyQualifiedErrorId : DiskConversion,Microsoft.Accelerators.Mvmc.Cmdlet.Commands.ConvertToMvmcVirtualHardDiskC
     ommand
    
    

ConvertTo-MvmcVirtualHardDisk : One or more errors occurred.
At line:1 char:1

  • ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "D:\Virtual Machine ...
  •   + CategoryInfo          : WriteError: (Microsoft.Accel...nversionService:DriveConversionService) [ConvertTo-MvmcVi
     rtualHardDisk], AggregateException
      + FullyQualifiedErrorId : DiskConversion,Microsoft.Accelerators.Mvmc.Cmdlet.Commands.ConvertToMvmcVirtualHardDiskC
     ommand
    
    

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment