Modern Software Experience

2008-05-08

Windows XP and Internet Explorer

versions

Windows XP ships with Internet Explorer 6. Microsoft released Internet Explorer 7 on 2006 Oct 18. Beta versions of Internet Explorer 8 are available.

running

Windows XP can run either Internet Explorer 6, Internet Explorer 7 or Internet Explorer 8. That remains true after an upgrade to Windows XP Service Pack 3. Windows XP SP3 can run either Internet Explorer 6, Internet Explorer 7 or Internet Explorer 8.

one exception

If you are running Windows XP SP3, installed Internet Explorer 7 and decided to downgrade to Internet Explorer 6, you can do so - with one exception: You cannot downgrade from Internet Explorer 7 to Internet Explorer 6 if you had already had version 7 when you installed Service Pack 3.

Service Pack 3 will remove the option to uninstall Internet Explorer 7.

how to keep downgrade ability

If you are a web developer, you may like to keep the ability to downgrade. They to doing so is simply to not have Internet Explorer 7 installed when you install Service Pack 3. If you have Internet Explorer 6 installed when you install Service Pack 3, you can upgrade from Windows XP SP3 with IE6 to Windows XP SP3 with IE7 and downgrade back to IE6 again whenever you like.

mixed file state

Jane Maliouta, the Deployment PM for IE8 (yes 8, not 7) provided the following rationalisation on the Internet Explorer blog. The issue is how some original Internet Explorer 6 files are treated by the IE7 install, the SP3 install and the IE7 uninstall - specifically in that order.

The Internet Explorer 7 install backs these up to a uninstall directory, so that these can be restored when you install Internet Explorer 6. The Service Pack 3 install for Windows XP (which, remember, ships with IE6, not IE7) will update some Internet Explorer 6 files. Now, if you were to uninstall Internet Explorer 7 after upgrading to Service Pack 3, the uninstall would get the old pre-SP3 Internet Explorer 6 files from the uninstall directory. The result would be an Internet Explorer containing a mix of old and new files. Microsoft calls this a mixed file state, and notes that "This state is not supported and is very bug prone.".

Internet Explorer 8 Beta

A similar problem exists for uses of the Internet Explorer 8 Beta. If you have IE8 Beta installed, and then install SP3, the option to uninstall IE8 will be gone.

Microsoft recommends uninstalling IE8 prior to installing Service Pack 3. In fact, if you are running Internet Explorer 8 Beta, Windows Update will not offer Service Pack 3 to you.

business applications

Service Pack 3 is not bluntly pushing Internet Explorer 7, but it is pushing it ever so gently by removing the ability to uninstall it. Businesses with badly coded applications that depend upon broken behaviour of Internet Explorer 5 and 6 will not be affected; Service Pack 3 will not upgrade Internet Explorer 6 to Internet Explorer 7.

inconsistent upgrade

That is an inconsistent upgrade policy. Microsoft has, rather infamously, claimed more than once that Internet Explorer is not just an application but a deeply integrated part of Windows. Well, if that is true, than Microsoft has treat Internet Explorer upgrades as a Windows upgrade.

Should Microsoft not have pushed Internet Explorer out as a Windows upgrade, perhaps even a critical one, and shouldn’t Internet Explorer 7 be included in Service Pack 3, perhaps as an optional component that is selected by default?

Internet Explorer 7 in Service Pack 3

The reason Microsoft does not do so is those pesky business applications that rely on the broken behaviour of Internet Explorer 6. That is understandable reasoning, but there is no reason to not push Internet Explorer out to home users - or to not actively offer it to all businesses that did not create crappy intranet applications. Better get them to upgrade before they make such applications!

Distinguishing between Windows XP Home and Windows XP Pro may be too much trouble, but Microsoft could certainly include Internet Explorer 7 in Service Pack as an optional component that is deselected by default. By not including Internet Explorer 7 in Service Pack 3, Microsoft missed a another chance to do the right thing.

disabling the uninstall is unnecessary

Microsoft’s reasoning why it disables Internet Explorer 7’s uninstall may seem to make sense to most. It does not make sense to me. Internet Explorer is part of Windows, at least in the sense that it ships with Windows. If the Internet Explorer 6 upgrades are so important, that a mixed file state must be avoided, Service Pack 3 should not disable the IE7 uninstall, which is sure to annoy some users, but do what it was designed to: upgrade the Internet Explorer 6 files. Service Pack 3 should upgrade the Internet Explorer 6 files even if Internet Explorer 7 has been installed. Service Pack should recognise the uninstall directory that Internet Explorer created for Internet Explorer 6 and upgrade the files in there. It should simply create the state that directory would be in when the user had installed Internet Explorer 7 after installing Service Pack 3.

what to do

Most Internet Explorer 7 users will never want to downgrade, but people just do not like when choice is taken away from them. Microsoft should have bundled the changes that Service Pack 3 makes to Internet Explorer 6 in a Service Pack for Internet Explorer 6, and included the logic to update the uninstall directory that Internet Explorer 7 makes. The good news is that it can still do so, and many Internet Explorer 7 users will be happy if Microsoft does.

links