Contrary to what Microsoft claims, it's possible to use Microsoft Virtual PC 2007 on a computer running Windows 8!
Update : that guide seems also to work on Windows 10 x86 (32-bit)
1) Download Microsoft Virtual PC 2007 with Service Pack included (version 6.0.192) on this URL:
31/01/2019: unfortunately, Microsoft has removed it from its server... Get it back again thanks to my mirror ==> 32-bit | 64-bit
2) first obstacle: Windows 8 blocks the installation process as soon as you click on the installer... It's easy to bypass: rename the installer to anything else.
3) After the installation, the same blocking appears when you launch Virtual PC. Go to the location where you installed the program (« Program Files\Microsoft Virtual PC » on 32-bit systems or « Program Files (x86)\Microsoft Virtual PC » on 64-bit systems) and rename the executable file « Virtual PC » to something else.
4) Now, the situation differs depending on the architecture of your operating system...
==> if you use Windows 8 32-bit, you can already enjoy Microsoft Virtual PC 2007: despite the previous warnings, that hypervisor is already compatible with Windows 8 32-bit. You can continue the reading to update some components, especially if you actually use Windows 8.1.
==> if you use Windows 8 64-bit, it's not over: if you stop the reading now, you'll understand why Microsoft stated that the older application is not compatible with Windows 8... By starting any virtual machine, you eventually get that BSOD!
5) The previous screenshot (from Windows 8 64-bit) mentions the vmm.sys file, it's the virtual machine monitor. This is definitely the problem. Go to Windows\System32 folder and search "vmm.sys" ==> The exact location should be Windows\system32\Drivers but that depends on the language of your system.
6) Delete the current vmm.sys and replace it by a newer version, released in 2012. A such file is shipped with the « Windows Phone SDK 7.1.1 ».
To save your bandwidth, here is a much smaller archive (345 Kb) with the revised driver:
Download the updated vmm.sys
That archive contains two variants (32-bit and 64-bit). Obviously, you have to use the file intended for your system; you cannot use a 32-bit driver on a 64-bit system or the opposite! In case of mistake, Microsoft Virtual PC no longer runs. To repair, replace the wrong version by the correct one; that may imply starting the computer into safe mode.
7) Reboot to load the newer vmm.sys: you can finally use Microsoft Virtual PC 2007 on Windows 8 64-bit!
To illustrate, here's a screenshot with two guest systems (MS-DOS and Windows 95) both running inside Virtual PC on a Windows 8 host.
(A) Hyper-V can coexist with Microsoft Virtual PC 2007 on the same physical computer. It's even possible to run them simultaneously. The next screenshot proves it: you haven't to choose between these two pieces of software. You can enjoy the one without giving up the other!
(B) Given the previous modifications, DO NOT apply the security hotfix for Microsoft Virtual PC on Windows 8 64-bit (KB969856, available though Microsoft Update and Download Center)! Why? Because that hotfix replaces the original vmm.sys by another released on april 2009, thus a file older than those from Windows Phone SDK 7.1.1. Consequently, that fix doesn't apply to that operating system. If you upgrade vmm.sys to the newest version on Windows 8 32-bit, it's the same thing.
(C) You can possibly upgrade Microsoft Virtual PC 2007 SP1 to the latest revision (6.0.210). Please note you may have to rename the executable file again after applying the Rollup.
The installation of Rollup is normally done on Windows 8.0 but it turns out problematic on Windows 8.1.
==> On Windows 8.0 (32-bit and 64-bit): the official installer perfectly fits. Link:
29/12/2017: unfortunately, Microsoft has removed the rollup from its server... Get it back again thanks to my mirror ==> 32-bit | 64-bit
==> On Windows 8.1 (32-bit and 64-bit): it's strongly recommended to read the next section.
Specific problems of Windows 8.1
Although being free for Windows 8 users, Windows 8.1 is far from being just a Service Pack: with a revised user interface, an updated kernel (from NT 6.2 to NT 6.3) and many other extra features, it's truly another operating system. However, there are additional problems with some pieces of software, including Microsoft Virtual PC 2007. Luckily, there are solutions!
Important: Windows 8.0 users don't need to read the following explanations, which apply to Windows 8.1 only.
It's basically the same as Windows 8.0. See the above « procedure ».
Stuttering mouse cursor
Windows 8.1 differently treats the mouse input. While most programs work as good as before, it's not true for Virtual PC: the mouse strangely behaves inside Microsoft virtual PC. That bug occurs only if the pointer integration is disabled. However, it's simply impossible to enable it on any guest system older than Windows 95/98; that means running an unsupported OS (like Windows 3.1) become painful. Don't worry: there is a tip for EVERY virtual machines!
1) Download KB2908279. Since that issue appears on several games too, Microsoft released a specific patch:
==> Windows 8.1 32-bit : http://www.microsoft.com/en-us/download ... x?id=40910
==> Windows 8.1 64-bit : http://www.microsoft.com/en-us/download ... x?id=40909
Apply it and reboot your computer.
2) By default, that patch takes effect only on some popular games but Microsoft explains how to add another program on the list. You guess that's the procedure to resolve the annoying bug on Microsoft Virtual PC 2007. Firstly, run Registry Editor (regedit.exe). Ignore the UAC if warning.
3) Go to the following key
Code: Select all
4) Inside the « Layers » key, create a new string value. For its name, specify the complete address of Microsoft Virtual PC 2007 executable file. For example, if the host operating system is Windows 8 64-bit and it's installed on C: drive, the value name should look like this:
C:\Program Files (x86)\Microsoft Virtual PC\Virtual PC.exe
The exact address depends on the configuration of your computer! You must take into account the actual name of executable file.
5) In addition to name, you have to modify the data of that string value. Enter NoDTToDITMouseBatch
6) It isn't over! Open a command prompt with administrators permissions and run the following command:
Code: Select all
While the latest version of Microsoft Virtual PC 2007 (6.0.210) can be installed without any problem on many system hosts, from Windows XP to Windows 8.0, it's starkly a different story on Windows 8.1!
During the installation, the Rollup redefines the configuration of virtual network card driver. It's quite normal since that update improves NAT shared network performances. Oddly, that uninstalls virtual network card driver on Windows 8.1 (that doesn't happen on earlier versions of Windows, including 8.0). As a result: after applying Rollup, it's no longer possible to directly connect virtual machines to a physical network card and thus manage them exactly like other physical computers. To make matters worse, on Windows 8.1 64-bit, you cannot uninstall Microsoft Virtual PC 2007 from Control Panel after applying the Rollup! Windows 8.1 32-bit is not affected by the uninstall bug but it is about the Rollup installation.
What are you supposed to do? My piece of advice is don't use a Virtual PC version higher than 6.0.192, the extra features of Rollup are cool but not essential. If these improvements are important for you, manually replace two older files by updated ones. It's enough to enjoy full screen on 1920x1080 monitor without uninstall virtual network drivers.
Download the updated files (from 6.0.210), in two variants (32-bit and 64-bit)