Internet Explorer Application Compatibility VPC Images under VirtualBox
Update – 25th June, 2012
The amazing Greg Thornton (https://github.com/xdissent) has very kindly taken all the hassle out of this process and made it super easy to get the VPC images running in Virtualbox. They will still expire but you should be able to roll back to a clean snapshot if it gets annoying.
Get the installer here – https://github.com/xdissent/ievms
Donate to say thanks to Greg here – http://pledgie.com/campaigns/15995
With the release of Internet Explorer version 8, Microsoft have added yet another browser into the mix for we web developers to support.
Testing on different versions of Internet Explorer has always presented some challenges. Unlike some other browsers, it’s not possible to truly run various versions side-by-side. Some applications like Tredosoft’s Multiple IEs go some way to providing this functionality however problems still manage to present themselves.
The easiest way to really test is to use virtual machines created with specific versions of Internet Explorer running under Windows XP or Vista. Microsoft have kindly donated free, downloadable disk images to run under their Virtual PC software.
Unfortunately for some, Virtual PC only runs under Windows. I prefer Sun’s alternative so here are some instructions for installing the Internet Explorer Application Compatibility VPC Images under VirtualBox:
- Go here and download the VPC disk image(s) of your choice.
- Extract the VHD file using your favourite archive manager. You should probably read the associated documentation and EULA.
- Start VirtualBox and hit “New”.
- Choose the appropriate operating system and give your new VM a name and some RAM.
- On the hard disk screen, click “Existing” to open the Virtual Media Manager.
- Click “Add” and locate the extracted VHD file.
- Select the new disk image and click “Ok”, “Next” then “Finish”
- Start up the VM and press F8 as it boots to get into the Windows startup menu. If you don’t make it here on the first try, just wait for the BSOD then try again.
- Start Windows in Safe Mode. It may take a little while for your peripherals to start responding, just be patient.
- Ignore any new hardware wizards and open up a command prompt. Run
sc config Processor start= disabled
Now reboot. - Again, ignore any new hardware wizards and select Devices -> Install Guest Additions. Follow the installation prompts and reboot.
- Once more, ignore the hardware wizards and open a command prompt. The guest additions ISO should still be mounted at D:. Run
D:\VBoxWindowsAdditions-x86 /extract /D=C:\Drivers - Now go through the new hardware wizards. For the Ethernet controller, point the wizard at
C:\Drivers\x86\Network\AMD
That should be it. I’ve tested this using the Windows XP images and all has gone well.
Unfortunately, it looks like Microsoft have used the same disk UUID for each image which means VirtualBox will only allow one image at a time into the Virtual Media Manager. Hopefully this bug will be fixed shortly which should clear things up.
UPDATE
If you see a dialog on startup looking for cmBatt.sys and you don’t have a Windows CD handy, just disable the unknown battery device from Device Manager.
UPDATE 2009-05-21
Looks like the aforementioned UUID bug may be addressed in the next VBox release (2.2.3). All I can say is “thanks VirtualBox team, love your work”.


March 23rd, 2009 at 2:46 pm
Thanks for this Phil, works beautifully. Realistically this is the only way to test multiple version of IE. Clean installs of OS with specific version of IE. The only real way is to stop cateting for people using IE6 and force people to upgrade to IE7+ or they’ll never learn
PS: Sun’s VirtualBox rocks… Phil put me onto this and its just beautiful.
April 1st, 2009 at 6:37 pm
UUID problem can be solved be the routine described here: http://stackoverflow.com/questions/55577/how-can-i-test-my-web-pages-in-microsoft-internet-explorer-on-a-mac
One should convert VHD image into VDI.
July 10th, 2009 at 1:54 am
Hey Fill, post was really useful and I set up XP with IE6 vdi on my vista machine.
I have 1 question, I am developing web based application on my local and have configured it to use localhost:8080 for testing. Is there a way I can hit this url from the XP virtual machine running inside virtual box.
July 11th, 2009 at 3:15 am
Really useful post. Many thanks.
Slightly different method in full in screencast format also available at http://www.10voltmedia.com/blog/2008/12/screencast-install-internet-explorer-on-osx-using-virtualbox/
@ambikeshwar: you can reach your host from a VM by using your host’s IP address, followed by the directory in which your test site is located eg http://192.168.0.2/sites/myexamplesite.com/
July 30th, 2009 at 7:35 am
Thanks for the guide, it helped a lot.
The VPC expires August 31, 2009 for ie6 though, which is soon, I wonder what our option will be at that point?
July 30th, 2009 at 8:50 am
Simply download the next 3 month release and repeat the process.
September 1st, 2009 at 8:41 pm
Unfortunately the latest App Compat VHDs no longer run under VirtualBox due to licensing/activation issues. Thanks a ton MS…
http://forums.virtualbox.org/viewtopic.php?f=2&t=21712
December 18th, 2009 at 6:17 pm
this actually assists, now i receive the troubles and i donot know how to work out,
i research google and found your blog,
thanks once againjust one thing, may i post this entry on my site? i will add the source.regards!
March 15th, 2010 at 9:30 pm
[...] Internet Explorer Application Compatibility VPC Images under … [...]
April 14th, 2010 at 9:16 pm
Just now I ran through your tutorial and the image suddenly asked to activate my copy of windows. This seems very odd of a compatibility test. Any thoughts?