Recently, I was exploring the possibility of converting a physical machine to a virtual machine. Turns out that it can be done in a few clicks, and I am very impressed by the tools.

There are two methods available:

If you are using Microsoft Hyper-V or VirtualPC, you can use Disk2VHD to convert your physical hard disk into a virtual hard disk. Disk2VHD is included free in the SysInternals toolset. It’s as simple as select the hard disk to virtualise and the tool will convert that partition into a VHD or VHDX format.

If you are using VMWare, VMWare has this free tool called VMware vCenter Converter Standalone that can be used to convert physical machines to VMWare virtual machines.

My Experience

Before I realise that VMware has their tools to convert the physical machine, I used the first method to convert mine into VHD. Since I’m on Macbook, I need to convert VHD to VMDK so that it can be used by VMware Fusion.

Many blogs suggested using WinImage to convert VHD to VMDK. I did so successfully but VMWare Fusion refused to boot up even after I set the hard disk as the startup disk. Few suggested that it might be due to IDE vs SCSI vs SATA problem but I couldn’t make it work even after modifying the bus drivers.

I’m almost on the verge of giving up when I saw the second method. The thing about using VMware’s tool to convert to their own virtual machine format is the fact that the team should know what they are working on. Right after the conversion, we can immediately load the virtual machine on VMWare Fusion.

Yay!

Problem

Unfortunately, the keyboard is not responsive at all when I loaded my physical machine onto VMWare Fusion. I could not get pass the login page without using the on-screen keyboard to type the password.

I suspect that it’s due to the keyboard’s driver. The physical machine is installed with Synaptics keyboard while my Macbook is definitely not using that. For all the virtual machines that we have created natively on VMWare Fusion/Workstation, they are installed with virtual keyboard drivers.

To solve this problem, we need to remove the previous configuration from the virtual machine so that it will use the virtual keyboard driver instead of the one that comes with the physical machine.

Here’s the solution:

  1. Open Registry Editor or Registry on your Windows machine.

  2. Navigate to HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E96B-E325-11CE-BFC1-08002BE10318}

  3. Click on UpperFilters

  4. Remove SynTP entry from the value.

  5. Close and restart the virtual machine.

You might not be seeing SynTP as what I saw on my virtual machine as it depends on your physical machine. Most likely what you need to remove will be the first line of the entry. If you are unsure, you can always check the keyboard’s brand on your physical machine.