Joe Maller.com

IE6, IE7 and IE8 Compatibility testing with Microsoft Virtual PCs

Or: How to covert Microsoft’s Internet Explorer Application Compatibility Virtual PC images for testing on a Mac with Parallels Desktop or VMware Fusion. (but that’s kind of a mouthful)

To help with web development and testing, Microsoft provides several compatibility environments for past versions of Internet Explorer. These are time-limited, pre-configured Virtual PC disk images, intended for use with Windows Virtual PC.

That’s great, except Virtual PC doesn’t really run inside another virtual environment like VMware Fusion or Parallels Desktop. Since so much web development is done on Macs these days, this makes testing difficult. But, the VPC images are just virtual hard drives, so they can be easily converted to the native format of either Parallels or VMware.

Below are instructions for converting Microsoft’s .VHD files to native Parallels Desktop or VMware Fusion virtual machines. The goal is to do everything without using another Windows machine or digging out your old WinXP CD.

Get the IE Compatibility VMs

Download one or all of the Internet Explorer Application Compatibility VPC Images. Self-extracting EXEs can be decompressed on a Mac with The Unarchiver. The VHD is all that’s needed, one or all of these:

  • IE6Compat.vhd
  • IE7Compat.vhd
  • IE8Compat.vhd
  • Vista Business with IE7.vhd
  • Vista SP1 x86 with IE8 2009-Apr.vhd

Convert the VHD image to Parallels’ or VMware’s native virtual disk format

Currently, Parallels Desktop 6 can’t convert VHDs through it’s GUI, but it does include a hidden command-line utility which works perfectly. Create a new Parallels VPC in the default location (~/Documents/Parallels) with this command:

$ /Library/Parallels/Parallels\ Service.app/Contents/PlugIns/Parallels\ VM\ Converter.app/Contents/MacOS/prl_convert IE7Compat.vhd 

For VMware Fusion, use one of the components in Q (qemu-img, details) to convert the .VHD files to VMware’s .vmdk format.

$ /Applications/Q.app/Contents/MacOS/qemu-img convert -O vmdk -f vpc IE7Compat.vhd IE7Compat.vmdk 

Create a new Virtual Machine using the vmdk as the disk. I could not get Vista to work dependably with VMware.

XP: Fix Windows Drivers

On first boot, the VM will attempt to re-activate Windows. This will fail because the networking drivers haven’t been installed yet.

Next the VPC_EULA will open and the first of many “Files Needed” dialogs and “Found New Hardware” wizards will appear. Close and cancel everything until you’re back at the Windows XP desktop.

If you’re running Parallels Desktop, it will take over and install its tools. If you’re using VMware, choose Install VMware Tools from the Virtual Machine menu. VMware also asks for a handful of drivers during tools installation, cancel these, they’ll be fixed later. The VM will reboot when the tools and drivers finish installing.

After the initial reboot, Windows requires WGA activation. Since this is a Microsoft-provided license, the VM will pass WGA and Windows will be activated. There’s no point in registering, so skip that. Everything from here forward is cleanup.

The easiest way to fix a bunch of drivers is to install XP Service Pack 3. Download the ISO from Microsoft here: Windows XP Service Pack 3 – ISO-9660 CD Image File

Any lingering driver issues can be resolved in Device Manager (Control Panel > System > Hardware tab > Device manager). The problem items should either have their drivers updated or, if that doesn’t work, disabled altogether. VMware’s audio driver failed to load initially but updated successfully. Mystery USB devices were a problem in both, but can be disabled.

Ironically, I had much more trouble getting these VMs running natively under Virtual PCs on a Windows box. Many of these steps are necessary there too.

Other stuff I install:

VMware or Parallels?

For years I’ve been bouncing back and forth between the two. It seems that with each major release, one leapfrogs the other. After testing VMs in both, I’ve decided to switch back to Parallels. At the moment, it just seems more full-featured and seamless. According to a recent MacTech virtualization comparison test, Parallels is also faster.

Disclaimer

The above process may violate the second paragraph of the “Installation and Use Rights” section of Microsoft’s XP EULA:

You may install and use one copy of the software on your device of which you are running a validly licensed copy of Microsoft Virtual PC or Microsoft Virtual Server. You may not change or convert the virtual hard disk image from the VHD format.

However, no such clause appears in the Vista EULA which seems to contradict the above and fully supports virtualization:

You may install and use one copy of the software on your device of which you are running any virtualization software able to run Virtual Hard Disk (VHD) formats, including Microsoft Virtual PC or Microsoft Virtual Server.

Anyway, I assume no responsibility for what anyone does with this information.

No related posts.


  • Chris

    Thank you for this post. Everything works great, right up until you’re required to pass the WGA verification. How did you manage to bypass that? I’m trying to create a XP-IE6 VM on Parallels 6.

    • http://joemaller.com Joe Maller

      Just activate it. These are Microsoft-granted, time-limited licenses, so WGA will activate successfully.

      You can skip the first request for activation, there’s no network anyway, so it won’t work. Parallels will finish installing it’s tools and drivers and reboot. Now, activation will work and your testing VM is ready to go. I just did it again to be sure and it worked perfectly.

      Thank you for pointing this out, I should have mentioned it in the post and will add a paragraph to clarify the activation step.

      • Chris

        Thanks for your lightening fast response! Unfortunately, the activation process is not working that way for me. When I try to “just activate it,” I get the dialog “Windows was unable to activate online. Click the telephone button…” There is a retry button, loops around to the same place. BTW, this behavior (on my machine) is consistent with what MS says on their site about these images. Since I can not actually start windows, the Parallels tools are not able to install. I am trying another image…

        • Jon

          You might try registering. The IE6 image should activate if you register, versus trying to activate w/out registering.

      • Anonymous

        Thanks for the post. It cleared a few questions I had. But I do have the same issue as Chris:

        “Windows was unable to activate online. Click the telephone button…” There is a retry button, loops around to the same place.

        Any ideas on this?

    • Bill G

      AntiWPA blocks XP activation expiration so you don’t have to remake these every six months. For Vista, find a copy of “Vista Developer Activation”

  • http://profiles.google.com/carlos.oliva Carlos Oliva

    Hi @joemaller:disqus , I just finished converting and installing the IE8 Vista Compatibility VM under Parallels 6 – I used the prl_convert utility and it worked smoothly.

    However, after booting the VM the system cannot find a bunch of drivers (network among them). I installed Parallels Tools but the problem still persists. While trying to look up for information regarding this issue I came across your post. Did you have any kind of problem with drivers on IE8+Vista?

    Best,

    • http://profiles.google.com/carlos.oliva Carlos Oliva

      Hey, just getting back to myself here. It seems to be the case that the IE8/Vista VM uses a different Ethernet adapter than the one provided by Parallels (which migth be true as well for the other hardware devices). In my case it happened to be an “Intel PRO/1000 MT Server Adapter” (IDK if that’s the default for the VPC or the VM is accessing the underlying hardware directly – which I find difficult). I downloaded the driver from here: http://downloadmirror.intel.com/18718/eng/PROWin32.exe and after dragging it over to the Vista VM Desktop and installing it, network started working.