Home Dashboard Directory Help
Search

Bootstrapper for VS2008 SP1 x86 VC Redistributables Looks For Wrong Product Code and Installs Every Time by Jon Baggott


Status: 

Closed
 as Fixed Help for as Fixed


3
0
Sign in
to vote
Type: Bug
ID: 453923
Opened: 5/19/2009 10:38:15 AM
Access Restriction: Public
0
Workaround(s)
view
0
User(s) can reproduce this bug

Description

The bootstrapper for the Visual Studio 2008 SP1 C++ redistributable package has the wrong product code in its product.xml. This causes it to attempt to install the package every time, and if a reboot is needed because the files are in use at startup, it enters an infinite loop of installing and requesting a reboot thus preventing the main installation from ever working.

The workaround is to edit the product.xml to use the correct product code, which according to Aaron Stebner (http://blogs.msdn.com/astebner/archive/2009/01/29/9384143.aspx) is {9A25302D-30C0-39D9-BD6F-21E6EC160475}.
Details
Sign in to post a comment.
Posted by Microsoft on 9/25/2009 at 2:44 PM
Hi JonBaggott,

Please try:
http://support.microsoft.com/kb/962219
You should be able to download the hotfix from this location.

Thank you,
Visual Studio C++ Team
Posted by Cristian Amarie1 on 9/1/2009 at 12:27 AM
A similar manifestation also on my machines, environment similar or the same, with the mention that version 9.0.30729.4148 does not install over 9.0.20122.8 because of the incorrect product code (which in product.xml is the one of 9.0.20122.8, even if vcredist_x86.exe have the correct version, 9.0.30729.4148). The generated bootstrapper setup detects the runtime as installed because of this (in setup log appears 'Bypass' instead of 'Install'), and the .msi fails later.
Running the vcredist_x86.exe, the runtime is correctly installed - obviously the unpacked MSI (vc_red.msi) contains the correct product code.

* * *
Manifestation: the ATL hotfix setup (runtime 9.0.30729.4148 post-SP1, but also the SP1 as well, I think) does replace the vcredist_x86.exe (vcredist_x64.exe) with the correct version, but it does not update correctly the product codes in the product.xml files.
Expected result: the product code contained in vcredist_nnn.exe file matches the product code in product.xml file.
Actual result: the product.xml file contains the product code of the initial runtime version 9.0.20122.8, while the vcredist_nnn.exe contains the correct product code matching the latest version (9.0.30729.4148). (nnn = x86 or x64)

This is the solution I applied:

Solution (applies to both x86 and x64 installations):
- "simulated" install of VS 2008 SP1 runtime 9.0.30729.4148 (start vcredist_nnn.exe setup, copy the temporary files created, then cancel installation) ;
- get the vc_red.msi temporary file created by the VS 2008 runtime setup and open with MSI editor Orca;
- lookup on Property section, value ProductCode;
- get the product code and update manually the product code in the bootstrapper corresponding incorrect file from Windows SDK
(default locations:
x86: C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\vcredist_x86\product.xml
x64: C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\vcredist_x64\product.xml
)
-> on MsiProductCheck section, replace Product="{correct-product-code}";
- rebuild the installation program.

VS 2008 SP1 + ATL fix - runtime files 9.0.30729.4148 product codes:
- x86: {1F1C2DFC-2D24-3E06-BCB8-725134ADF989}
- x64: {4B6C7001-C7D6-3710-913E-5BC23FCE91E6}
Posted by Cristian Amarie1 on 9/1/2009 at 12:05 AM
For who is interested, these are the product codes for VS2008 SP1 v. 9.0.30729.4148 (to update product.xml bootstrapper files):

Visual C++ 2008 SP1 + ATL fix runtime files:
- x86: {1F1C2DFC-2D24-3E06-BCB8-725134ADF989}
- x64: {4B6C7001-C7D6-3710-913E-5BC23FCE91E6}
Posted by Jon Baggott on 5/22/2009 at 8:58 AM
Thanks for the info. However, this hotfix does not seem to be publically available...
Posted by Microsoft on 5/21/2009 at 5:19 PM
Hi Jon,

Indeed, the problem you have found is present in VS 2008 SP1. We have released a QFE a couple of months ago and it contains a fix this issue.

Users can download this new QFE at:
http://hotfix.partners.extranet.microsoft.com/FixDetails.aspx?fixid=373608

Please, let us know if you encounter any further issues.

Thanks,
George Mileka
Visual C++ Libraries
Posted by Microsoft on 5/20/2009 at 2:29 AM
Thank you for your feedback, We are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)
Sign in to post a workaround.