I mentioned previous that patches for the .NET Framework 2.0 and Visual Studio 2005 will require Windows Installer 3.1 to be installed on Windows 2000, XP, 2003, and future Windows platforms. A reader mentioned that he can’t install the Windows Installer 3.1 redistributable on his checked (debug) build of Windows XP SP2. An error dialog was displayed that read, “KB893803v2 Setup cannot update a checked (debug) system with a free (retail) version of KB893803v2, or vice versa.”
The reason is that update.exe packages only install retail bits on retail builds and checked bits on checked builds. You can spoof Windows patches in order to install retail bits on checked builds, though, which is necessary in this case because checked bits of Windows Installer are not available. This does, however, require a registry change so I must give you the standard warning:
Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.
Also, because you’re installing retail bits the debug symbols for the previous checked bits installed with the operating system will be incorrect. The retail redistributable will not clean these up so install the retail redistributable on a checked build at your own risk. If you want the correct symbols, you might backup the previous symbol files and use the public symbol server to access stripped public symbols.
- Click Start and then click Run.
- In the Open box, type regedit.exe and click OK.
- In the Registry Editor, select the following registry key:
- Double click the CurrentType registry value.
- Changed the word Checked to Free and click OK.
Now go ahead and run the Windows Installer 3.1 redistributable. When you have finished installing and before you reboot your machine, you should go back through the steps above and changed Free back to Checked or you may suffer future problems.