The majority of web users still use IE7 or IE8, but the majority of web designers don't have access to those crappy old browsers. That makes testing web sites awkward. Fortunately there's a free and legal solution for occasionally running IE using virtual machines. Microsoft makes virtual disk images for Windows with IE available specifically for testing web sites. Boot those disk images in a virtual machine and you have a full virtual Windows system with an old IE for testing.

Microsoft provides the images for Virtual PC, but they work in the free VirtualBox VM as well. Here are detailed notes on getting Vista with IE7 running on a Mac running Lion. The idea should be the same for other systems.

  1. Download and install VirtualBox. It's pretty painless on MacOS.
  2. Download the disk image you want from Microsoft. They're large, several gigabytes in a multipart RAR archive.
  3. Unpack the archive using The Unarchiver (Macs), IZArc (Windows), or your tool of choice. Out will come a large VHD file, 14 gigs for Windows Vista.
  4. Launch VirtualBox and press "New" to create a new virtual machine.
  5. On page 2 of the Wizard, name your machine something memorable and set the Operating System to "Microsoft Windows", Version to "Windows XP". (The Vista pre-set will not work: it uses SATA drives which the Windows system doesn't support. Choosing XP forces IDE drives.)
  6. On page 3, configure RAM. I have lots of RAM so I gave it 2 gigs.
  7. On page 4, choose "Use existing hard disk" and click the little green arrow folder to browse to the VHD file you unpacked in step 3.
  8. Click "create" and exit the Wizard.
  9. In the VirtualBox Manager, right click your new VM and choose "Settings".
  10. In Settings, click Network, then Advanced, then change Adapter Type to "Intel PRO/1000 MT Desktop (82540EM)". (The Windows system doesn't have drivers for the default PCnet card.)
  11. Exit settings and double-click your new VM to launch it.
  12. In VirtualBox, choose Machine / Disable Mouse Integration so you can see your mouse cursor.
  13. Wait patiently. Your Vista virtual machine should boot and give you a login screen. (If it blue screens and reboots, you have a driver problem: are you sure you told VirtualBox WinXP and not Vista?)
  14. Log in as user "Admin", password "Password1".
  15. Congrats, now you're running Windows in a VM!
  16. Inside the virtual Windows, you can mostly ignore or cancel all the boxes asking about drivers, activation, security, etc.
  17. (Optional) Choose Devices / Install Guest Additions to put some extra drivers in the Windows machine to make the VM more pleasant.

A few caveats.. I'm no VirtualBox expert, there's probably cleaner ways to configure the virtual machine so it runs better. I never could get the Windows XP system to boot. Also the virtual Windows boxes are still subject to Windows Activation, so you'll need to rebuild your machine from scratch every 30–90 days.

By the way, there are other ways to try a site on many browsers. A service like browsershots or BrowserLab is great for a quick check. But if you want a full interactive experience, a VM is a good way to go.

Update: Karl pointed me to IE VMs, a little shell script that automates the downloading and creation of Microsoft's images in VirtualBox. It looks good; wish I knew about it before! OSX Daily has a nice tutorial on using these scripts.
  2011-09-07 16:14 Z