Before installing Visual Studio 2008 Service Pack 1, you should first uninstall KB944899, a hotfix which improves performance when stepping through source downloaded from a source server.
If KB944899 is not removed prior to Visual Studio 2008 SP1, sometime during the middle of installation an error will occur and the error dialog is displayed as shown below.
Click on the “log file” link in the middle of the dialog. If it opens in Internet Explorer, you may have to click on the yellow information bar that appears on the top to allow scripts to run. Check the “Errors” message type and the following errors are highlighted.
Action: Install patch (C:UsersheathsAppDataLocalTEMPVS90sp1-KB945140-X86-ENU.msp) to Microsoft Visual Studio Team System 2008 Team Suite – ENU
Returning IDOK. INSTALLMESSAGE_ERROR [You must first uninstall the update for KB944899 before this installation can continue]
Patch (C:UsersheathsAppDataLocalTEMPVS90sp1-KB945140-X86-ENU.msp) install failed on product (Microsoft Visual Studio Team System 2008 Team Suite – ENU). Msi Log: Microsoft Visual Studio 2008 SP1 (Beta)_20080516_110428247-MSP0.txt
MsiApplyMultiplePatches returned 0x643
How to workaround this issue
You should remove KB944899 using the following instructions.
Download and run the cleanup tool
Updated: Download and run the cleanup utility which will both uninstall the patch if installed and delete any relevant traces in the registry. This is the recommended approach which supersedes the following manual instructions.
Windows Vista and newer
- Open Control Panel
- Click on “Programs”
- Click on “View installed updates”
- Remove KB944899 listed under any versions of Visual Studio 2008, ex: “Hotfix for Microsoft Visual Studio Team System 2008 Team Suite – ENU (KB944899)”
- If any other patches are installed on Visual Studio 2008, proceed to “Registry cleanup” below.
Windows XP and Server 2003
- Open Control Panel
- Click on “Add / Remove Programs”
- Check “Show updates”
- Remove KB944899 listed under any versions of Visual Studio 2008, ex: “Hotfix for Microsoft Visual Studio Team System 2008 Team Suite – ENU (KB944899)”
- If any other patches are installed on Visual Studio 2008, proceed to “Registry cleanup” below.
Registry cleanup
Newer patches may write the detection data for KB944899 as a mean for detecting hotfixes, so you may need to delete a registry key to prevent VS2008 SP1 from blocking the installation.
- Open an elevated command prompt
- Type the following command to determine if any other references to KB944899 are registered
reg.exe query HKLMSoftwareMicrosoftUpdates /f KB944899 /k /s
- For each search result displayed, copy the full key name including spaces and run the following command to delete the key; replace registry key below with the actual registry key included in quotes
reg.exe delete "registry key" /f
Description of the issue
The original release of KB944899 added new components into existing features which, though documented as supported, forced those features and their feature trees to be installed. If one or more of those features were not installed on a machine, Windows Installer then prompted for source or simply failed during silent installations. Source is required for the files in those features to be installed.
The current download for KB944899 – a new revision – works around this problem and will not block SP1 but many customers already have the original release of KB944899. To prevent prompting for source and installing features not originally selected for installation based on user preference, VS2008 SP1 will block if the original release of KB944899 is installed or appears to be installed.
KB944899 might also appear to be installed because another update might include the same fixes. In this way, older detection code continues to work with the detection keys when a newer update is installed with the same fixes. This is normally beneficial to deployments that require a specific hotfix to be installed even years after the hotfix was released.
0 comments