Convert a working XP machine to a virtual machine

Sebastian Pohl - 6. August 2017

If we can believe those statistics websites on the internet Windows XP still has a market share between 5 and 10 percent. XP machines are still in use by many companies and the government. Just a year back i converted a specialised piece of software for a local company so they could get rid of the last XP computer they had on site.

But what if it is not a single piece of software that is needed but a whole machine? Often times it is simply not possible or feasible to replace it with completely new tech because of compatibility issues between the software and modern hardware. In those cases it is often worth trying to convert the computer from a physical existing one to a virtual one.

The first step is to clean up the system as good as possible. Get rid of all unnecessary files, partitions and programs. The more stuff you have to carry over, the longer it will take. Be sure to check these things:

  • Defragment your harddrives. This speeds up the conversion process.
  • Run Disk Cleanup and remove all the temporary and trash files.
  • Check for updates. If your machine is connected to the internet, make sure that all necessary windows updates are installed.

Once you have prepared the system you have multiple options. There are tools like VMWare or VirtualBox that mostly do the same things but i wanted to make the transitions as easy as possible and stick to Microsoft tools. Up until a few years ago MS provided a handy little tool called VirtualPC that was an easy to use virtualization solution. But with the upcoming of processor virtualization technology they made the switch to Hyper-V with Windows 8. This made it even easier but requires a CPU that has hardware support for virtualization.

The Hyper-V software is a windows feature that can be added trough the „Windows Features“ dialogue (Image source: Microsoft).

After a reboot you are good to go.

But how does the XP machine do the transition from real world to virtual world?

Again, there are multiple options. I choose Disk2VHD which is a tool provided by microsoft that converts physical harddiscs to the VHD or VHDX format for virtual harddiscs.

This tool allows you to convert any harddrive on the computer you are running it on to a virtual one. You can either run it directly on the machine you want to convert or you can connect the drives to the machine you will do the virtualization on.

You will end up with one or multiple virtual harddisc files to use in a virtual computer. The next step is to fire up the Hyper-V manager (mine is in german).

I you already have virtual machines they will be listet here. Otherwise start by clicking New -> Virtual computer in the options on the right. In the dialogue you can then define multiple options. Keep the network as unconnected for now. You can attach the virtual harddisc with your system right now or you can leave this for later.  Finish up the process.

Now your newly made machine is in the list of virtual machines. Open up the settings.

Two things need to be done here. First, add any virtual harddrives that you need under the IDE-Controller tabs (Two per controller, if you need more, just add another controller via the topmost option to add hardware). Second, if you need network connectivity, add a „legacy network card“ to the hardware. Windows XP does not like the standard network adapter that comes with Hyper-V.

If you added the network adapter you also have to create a virtual switch via the options in the Hyper-V manager and set the connection option of the network card to this switch.

Here you can see the network adapter is connected to the virtual switch with the name „IPConnection“.

You can now connect to the machine or simply double click on it. This will open the connection window.

Just hit start or the power symbol in the menu and enjoy your now virtualized Windows XP machine. Be aware that there might be problems with drivers or software but those usually require manual troubleshooting that is very individual. If you run into any problems, comment below.

A very common one is the wrong assignment of drive letters. So be sure to check those if you run into problems.