Using Windows 7’s “XP Mode” to run IE 6, IE 7 and IE8 side-by-side

Windows 7’s XP Mode is essentially a Windows XP virtual machine that runs in the new Windows 7 version of Virtual PC. This new edition of Virtual PC includes cool features such as seamless windows. The main reason I’m interested in this is to run older versions of Internet Explorer for testing purposes. IE8’s compatibility mode does a pretty good job of emulating IE7 but there are differences, so I investigated how to get “real” IE7 running under Windows 7’s XP Mode, without losing IE6.

Out of the box, the Virtual PC image is Windows XP SP3 with IE6. The trick to getting IE6 to appear as a seamless window like this is to launch the Virtual Windows XP virtual machine and in the VM, create a shortcut in the “All Users” Start Menu or desktop:

image

After a short delay, the shortcut will be duplicated into the Windows 7 host’s start menu:

image

When you launch this shortcut in Windows 7, the main Virtual PC window will close and the application will be launched and projected onto your desktop.

Creating a VM for IE7

You can’t install IE7 side-by-side with IE6 on the same machine, so to run IE7 at the same time as IE6 we will need to create a new VM. Unfortunately, if you run the VirtualWindowsXP.msi setup again you’ll get a message saying “Setup has detected that Virtual Windows XP is already installed”:

image

The workaround is to create a new instance of the VM manually using the supplied VHD as the base disk image. To do this do the following:

Open the Virtual Machines folder from the Start Menu and click Create virtual machine:

image

Specify a name and location for the virtual machine:

image

For memory I specified 256MB, which should me more than enough for just running IE7:

image

Here’s the important bit. Choose “Create a virtual hard disk using advanced options”

image

…and then choose a Differencing disk. This is the same way that the default Virtual Windows XP VM is set up:

image

If you want, you can change the default name and location (I didn’t bother):

For the parent virtual hard disk choose the original Virtual Windows XP virtual disk, which on my machine was at C:\Program Files\Virtual Windows XP\Virtual Windows XP.vhd:

image

Now start the new Virtual PC you just created from the Virtual Machines folder and complete Windows Setup as appropriate, choosing a computer name unique for your network and an Administrator password:

image

When that’s done:

  • Enable Integration Features from the Tools menu of the Virtual PC window
    • For credentials enter Administrator and the password you entered during setup.
    • I chose to Remember my credentials for convenience
  • download and install IE7 in the VM,

When IE7 has installed and rebooted, create a shortcut to IE7 in the “All Users” start menu which, after a short delay, will create a corresponding shortcut in the Windows 7 start menu of the host.

image

So here’s the end result, IE6, IE7 and IE8 all running on Windows 7:

image

Ahhh, 3 generations, all together – don’t they look adorable?

27 comments so far

  1. Tommy on

    Cool trick! :)

  2. Henk on

    I installed Win7 RTM version Professional and unfortunately the procedure doesn’t seem to work there..

    The first steps are identical, but when I choose the “differencing disk” the next step is not “choose a parent virtual hard disk” but:
    “Choose a name and location for the virtual hard disk file” and that way there is no option to choose the existing vhd…

    Either there is a different in the way it works between Pro and Ultimate… or the procedure has been changed.

    What version did you work with RC or RTM ?

    Ashame this is one of the features I want to be using on a daily basis…

    Thanks for the Howto.. anyway.

    • Duncan Smart on

      This was using the RC. I’ll take a look with RTM when I get my hands on it.

      • Henk on

        I managed to get the same result by making a copy of the vhd and creating a new Virtal Machine. I use a little more disk space that way, but it works.

    • Dylan Harrington on

      I can confirm that it worked as described for me on a 64bit Ultimate RTM install.

  3. Thangaraj on

    Great tip!

  4. iGuide on

    Good trick, but now I imagine you have 3 “computers” to take care of instead of just one. I’ve always just used XP (dual booted on top of Tiger, Leopard, and now Snow Leopard with Boot Camp and Parallels Desktop) and just upgraded / downgraded between 6, 7 and 8 whenever I needed to check for compatibility. My advice is it’s easier to just upgrade and downgrade the browser when you need it, than to have two more Windows operating systems continually update. Of course, you would need Windows XP in order to run IE6.

  5. D. Estabrook on

    So far, IETester seems to work very well and renderes IE 5.5 through 8 in a single app. This is the most stable app I’ve seen with multiple IE’s.

    http://www.my-debugbar.com/wiki/IETester/HomePage

    • matt on

      It might be stable, but it doesn’t render exactly the same way as full installs. I would be very leery about relying on this tool. It bit me on the ass quite a few times.

  6. AlastairC on

    Henk: carry on from where you were, once you choose the advanced options and differentiation disk, you repeat some options and *then* it provides you the source disk.

    Another tip: I couldn’t find the ’source’ of the XP mode disk very easily, I think the new instructions from Microsoft lead you to create a differentiated disk to start with. So I went to the VMs folder, right-clicked on the XPmode disk, chose settings, and then looked at the second file location in under the hard-drive settings: its parent’s location.

    D. Estabrook: I’ve had problems with IE tester and JavaScript, where the rendering through it was nothing like IE6 in a virtual machine. I’m not sure the JS rendering is separated.

    Thanks for the how-to Duncan, I’ve bookmarked it as I’m sure I’ll need to point others here!

  7. Red! on

    Thank you… The secret was “All Users”… I tried in a bunch of places and the shortcut would simply not appear :p

  8. nick on

    What about IE add-ins? Flash, java, Activex etc

    i had issues getting them to work running virtually

    • Duncan Smart on

      Working fine here – you just install them into the VM.

  9. Marcus on

    What if you don’t have W7 Pro or better? On XP and Vista, I was just able to create virtual machines for IE6/7 without XP Mode using Virtual PC, but the Microsoft website says it won’t work on W7. Is there a way to make this happen on W7 without XP Mode?

  10. Doug Smith on

    I am getting a netbook with Windows starter. I will need to run IE6 for my Electronic Medical Record. WIll I need to upgrade to a full windows 7 to utilize this? I am a complete novice looking for some help prior to a purchase.

    • Duncan Smart on

      I doubt your netbook will have a processor capable of doing virtualisation, which is required for running Windows 7’s XP Mode. If it’s an Intel-based machine then check the list here: http://ark.intel.com/VTList.aspx

  11. Doug Smith on

    Thanks for the direction. Since the machine I plan to get has the Atom N280 and it appears on the list I suspect from a processor standpoint I will be ok. I also found the below listed link which you can put in the version of windows needed to run the XP Mode. Also requires professional edition of Windows 7. Thanks

    http://www.microsoft.com/windows/virtual-pc/download.aspx

  12. Emanuele on

    GREAT TIPS!

  13. Jens Trinkies on

    Thanks for the tip. Exactly what i was looking for.

  14. Wagner on

    Cool tip, it’s working fine here, IE6 and IE7. Thank you for this post ;)

  15. Wagner on

    Cool tip! It’s working fine for me with IE6 and IE7. Thank you for this post.

  16. Dirk on

    THX for all these great tips here. It works excelent with IE6 but I have a problem with IE7. It’s because IE7 can’t be installed on Win XP SP3 and the XPMODE you can download from the MS Website has SP3 build in…

    So does anybody got a workarround for me?

    • Dirk on

      So I fixed the issue for myself… It’s a question of the language you try to install. I’ve mentioned a little detail on the MS download page. The German version (I tryed to install this one first) does only works with SP2. The english version supports SP2 & SP3

  17. [...] XP-Mode eigentlich Abhilfe schaffen müsste. Die Installation ist recht einfach. Und wirklich, dank dieser überaus einfachen Anleitung habe ich nun im Startmenü gleich neben dem IE8 den [...]

  18. Carl on

    Nice tip, thanks!

  19. Virgil on

    Great stutf. blog.dotsmart.net deserves an award.


Leave a reply