Windows 7 introduces a feature known as Windows XP Mode, which is reliant on the latest version of their virtualization software: Windows Virtual PC. The older Microsoft Virtual PC 2007 is unable to run when Windows Virtual PC is installed, and vice versa. But what if you need to run both? Microsoft says it's impossible, but I will prove otherwise.
Reasons for needing both
Why would you need both? There are several scenarios I can think of:
- You want Windows XP Mode but you also need to run Windows 98 in a virtual machine. (Windows Virtual PC runs Windows 98 very poorly.)
- Your employees are accustomed to Virtual PC 2007, but you also want Windows XP Mode to work.
- You just want to do something that Microsoft says is impossible.
Please follow the below procedure to install both products. Note that this only works on Windows 7, since Windows Virtual PC and Windows XP Mode are not supported on any previous versions of Windows.
- 1. Install Microsoft Virtual PC 2007, ignoring compatibility warnings.
- 2. Copy the folder
C:\Program Files\Microsoft Virtual PCto your desktop.
- 3. Install Windows Virtual PC and XP Mode.
- 4. Uninstall Microsoft Virtual PC 2007.
- 5. Copy the
Microsoft Virtual PCfolder back into Program Files.
- 6. Apply tweaks from the VPC2007Workaround.zip file below.
The below ZIP file contains everything you need to get Microsoft Virtual PC 2007 and Windows
Virtual PC living together happily on the same machine. The contents are a file named
Virtual PC.exe, as well as some registry files.
C:\Program Files\Microsoft Virtual PC. Rename
Virtual PC.bin. Then, copy
Virtual PC.exe from the ZIP file into
Be sure to rename the old Virtual PC.exe to Virtual PC.bin,
since the included Virtual PC.exe is just a launcher!
vpc-license.reg file with Notepad. On the last line of the file, replace
the string "AAAAA-BBB-CCCCCCC-DDDDD" with your Windows product ID, which can be found by
right-clicking My Computer and clicking Properties. Then, save the file and double-click on
it to add the information to the registry. Be sure to enter your real product ID
before double-clicking on the file!
Finally, double-click on
vpc-shell.reg to add shell associations to the registry. Once this
is done, you should be good to go! Please read the Limitations below
Download file: VPC2007Workaround.zip
Sadly, Microsoft Virtual PC 2007 doesn't "just work" when installed. It needs to be coaxed into running in an unsupported configuration, but once you do this, it runs very well. The above ZIP file is all you really need; however, the below information can be useful for the more technically-minded among you who want to know exactly what is going on.
Additionally, when you uninstall Microsoft Virtual PC, file associations and licensing information is removed. Fixes for both of these are included in the VPC2007Workaround.zip file above.
Uh-oh! Microsoft has "hard-blocked" Microsoft Virtual PC 2007 on Windows 7, preventing you
from running it. This is attached to the signature of the
Virtual PC.exe file
of Virtual PC 2007. To get around this, I renamed the file to
and made a simple program with the name Virtual PC.exe that launches it. Command-line arguments
are passed to it as well, so you can continue to use shell associations.
When you launch Microsoft Virtual PC 2007, you will get an error about licensing information. To fix it manually, create a new file named "vpc-license.reg" and paste the following code into it:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Virtual PC] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Virtual PC\5.0] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Virtual PC\5.0\Registration] "PID"="AAAAA-BBB-CCCCCCC-DDDDD"
AAAAA-BBB-CCCCCCC-DDDDD with your product ID, which can be found
by right-clicking My Computer and clicking Properties. (This is NOT the same as your Windows
product key.) Save the file and double-click it to
add the information to the registry.
.vmc files for virtual machines will need to be associated with Virtual PC.exe if you want the ability to double-click on the file. The "vpc-shell.reg" file contains the required information.
Everything that I've tested so far – network, drag and drop, virtualization. Both products run quite well together; please note the limitations below though.
You cannot run both Windows Virtual PC and Microsoft Virtual PC 2007 simultaneously. This means that you cannot have a Windows XP Mode application running while you fire up Windows 98. It's slightly inconvenient, but oh well... sure beats not being able to run Windows XP Mode at all.
The above fix takes care of this by detecting if Windows Virtual PC is running, and giving you the option to close it.
I hope this has saved you some hair-pulling, swearing at your computer, and disappointment. Please tell me how this worked for you in the comments. I'd like to hear your experiences!