Navigation

Windows

General

Multiple browser versions at the same time (IE and FF)

Content

Intro
Internet Explorer
Firefox

Post comment (Allready 0)

Intro

If you build a complicated web page or if you include a heap of JS-functionality in one (for example using ExtJS), you always face the danger of it not working correctly in all browsers, in fact, that's most often the case, especially with the Internet Explorer. Obviously, you want to test those pages, but you will soon face the problem of testing old versions of the same browser. Here I'll describe my solution to get multiple versions of IE and FF to run smoothly on the same machine.

Even if it's possible without, you should really do all this in a VM just to be safe in case a problem surfaces. The methods described below were tested on a 32Bit Windows XP. Multiple versions of Firefox will work on pretty much every Windows version, but I'm not that sure for the Internet Explorer method - use at own risk.

Back to contents

Internet Explorer

Searching the Internet, you'll only find two possibilities to run multiple versions of Internet Explorer. Either you use a so-called standalone version (a hack) or you use multiple virtual machines.
The former solution never really works - I tried many of those standalone versions and there were some problems that always showed up: The Javascript message dialog (and others) would not display ("Error opening dialog" or something alike) which makes Javascript testing night-impossible, and often times the "old" IE used the rendering engine or javascript engine of the new version (working png-transparency in IE6 is a dead giveaway). Standalone versions are obviously not the right way.
The latter works without issues, Microsoft even offers temporary VMs for IE, but it needs way too much disk space and having to always change the VMs will get on your nerves soon.

Because I liked neither of those solutions, I made my own with which I am able to run multiple, full-featured versions of IE on the same machine. Here's how you do that:

  1. Download and install Sandboxie:
    Sandboxie is a program to run other programs in a so-called sandbox. Usually you'll need that for security, but it's perfectly fine for our case too.

  2. Downgrade to IE 6:
    For everything to work fine, you'll have to downgrade your IE-version to the oldest one you want to test with. To do that, simply uninstall IE8 from the "Add/remove software"-menu in the control panel and reboot. You can check the currently installed IE-version by clicking on the question mark in its menu and choosing "info". If you have IE7 now, repeat the uninstalling until you have IE6. I don't know how to downgrade IE6 to IE5, if that's even possible, but I diddn't try it anyway - you might have success with that.

  3. Creating a sandbox:
    Now we need a Sandbox for the new IE-Version (for every IE-version except 6 you'll need a sepparate sandbox). Open Sandboxie, open the "Sandbox"-menu and choose "Create New Sandbox". Name it according to the IE-version you want to put in it, for example "IE7".
    Now right-click it and open the settings. At "Apperance", tick the checkbox "Show sandbox name in window title" to always know which IE-version's running.

  4. Download IE-version:
    Go to Microsoft's IE-Page and choose the version you want from the list of old versions in the lower right. Alternatively, you can download them from the Browser Archive (Remember: Older versions than the currently (after step 2) installed one will not work)

  5. Install IE-version:
    Right-click on the downloaded installer and select "Run Sandboxed" and then the sandbox you made in step 3. While installing, do not install updates (you'll use the browser for nothing else than testing your pages anyway) and do not choose to restart, If everything went correctly, it should install without a problem. If there's an error message like "A newer version is allready installed", then you probably skipped step 2.

  6. (Simulate reboot):
    This step is probably not important, but it's cleaner anyway. Right-click in Sandboxie on your sandbox and select Run Sandboxed -> Any program -> regedit. Go to the key HKLM\software\Microsoft\Windows\CurrentVersion\RunOnce\ and copy the value of the only entry there (something about IE4) by opening it with a double-click. Then delete it, open Sandboxie again, right-click -> Run Sandboxed -> Any program -> cmd, paste the copied command using the right-click-menu and hit enter. There may be an error message that it couldn't find the registry key, but you can ignore that.

  7. Make shortcut:
    To have a fast and easy way of accessing the browser, right-click on your desktop (or wherever you want the shortcut to be), select new -> shortcut and enter the following line as the path. Just replace IE<Version> with your sandbox name, for example "IE7".
    "C:\Program Files\Sandboxie\Start.exe" /box:IE<Version> iexplore
    If you use "/box:__ask__" instead of "/box:IE<Version>", it will ask you which sandbox and therefore which IE-version to use every time you double-click the shortcut, so you'd only need one Shortcut instead of several ones.
    To fix the symbol, right click on the shortcut and select settings, then "other symbol" and then "browse", open the file C:\Sandbox\<Your User>\<Your Sandbox>\drive\C\Program Files\Internet Explorer\iexplore.exe and select your preferred Symbol.

Back to contents

Firefox

Firefox makes your life a lot easier (again) because it's not incorporated in the system.

  1. Download preferred Firefox version:
    You can download pretty much every Firefox version from the Mozilla-FTP, just go into the dir of the version you want, then to win32 and finally to your language (probably en-US) and download the exe file (ASC is a PGP-signature and an utterly useless one at that, because it's on the same server the exe is).

  2. Install your Firefox version:
    Just run the installer. Be careful to install Firefox in a sepparate directory (or example C:\Program Files\Mozilla Firefox\3.0\ instead of C:\Program Files\Mozilla Firefox\) and to not start it after installing it.

  3. Make a profile for your Firefox version:
    To ensure that the settings of the different FF versions do not bite each other, you have to make a profile for every version. To do that, open the command line and navigate to the directory where you installed firefox at step 2 and use the following command:
    firefox -ProfileManager
    ow make a new Profile and name it after the Firefox version of step 2.

  4. Make shortcut:
    To have a fast and easy way of accessing the browser, right-click on your desktop (or wherever you want the shortcut to be), select new -> shortcut and enter the following line as the path. Just replace the <>-surrounded tags with your values.
    "C:\Program Files\Mozilla Firefox\<Version>\firefox.exe" -p <Profile Name> -no-remote
    Running an old Firefox version without the right profile using the shortcut is dangerous, you could mess up the settings of your current (newest) Firefox version.

  5. Optional: Rebranding:
    To instantly see which version of FF you're running, you can change the text in its title bar. To do that, go to the Firefox install directory of the version you want to change and there to the "chrome" subdirectory. Open the en-US.jar (or yourlanguage.jar) file there with an archive program like 7zip, Winzip, WinRar etc, navigate to the directory locale/branding and open the file brand.dtd with a text editor. Change the Value of "brandFullName" in a way that it includes your version - that's what's displayed in Firefox' title bar. If your archive program should not support direct editing, you have to unzip the file, change the value, rezip it and rename it from en-US.zip to en-US.jar.

Back to contents

Comments

Add comment

*Name:

Email:
(Optional, hidden. Only if you want to be notified of replies)

Homepage:

* Spam check: 2 * 4 =
*Comment:

Back to contents