SQL Server 2005 setup fails on windows 2008 due to corrupt VC++ component

Here is a scenario where you might end up receiving a Fatal Error while installing SQL 2005 on Windows 2008 environments. Below is the snippet from the Setup logs:

Summary Log:

==========

OS Version : Server 4.0, Enterprise Edition Service Pack 2 (Build 6002)

Time : Sun Apr 18 07:45:43 2010

 

Machine : SERVERNAME

Product : Microsoft SQL Server Native Client

Product Version : 9.00.1399.06

Install : Failed

Log File : C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files\SQLSetup0002_SERVERNAME_SNAC.log

Last Action : InstallFinalize

Error String : An error occurred during the installation of assembly 'Microsoft.VC80.CRT,type="win32",version="8.0.50727.42",publicKeyToken="1fc8b3b9a1e18e3b",processorArchitecture="x86"'. Please refer to Help and Support for more information. HRESULT: 0x80070BC9. assembly interface: IAssemblyCacheItem, function: Commit, component: {98CB24AD-52FB-DB5F-A01F-C8B3B9A1E18E}

Error Number : 1935

From the above error message could see that there is a failure in Microsoft SQL Server Native Client and SQLSetup0002_SERVERNAME_SNAC.log is the log specific to this error holding more information. Explored more into this file and could get below snippet where the failure occurred.

SNAC.Log:

=======

MSI (s) (98:4C) [09:28:41:388]: Executing op: ActionStart(Name=SNAC_SetClientSSNLDefaults.9B634CFE_9A39_4508_9CA8_D8DE65A7B8AD,,)

MSI (s) (98:4C) [09:28:41:388]: Executing op: CustomActionSchedule(Action=SNAC_SetClientSSNLDefaults.9B634CFE_9A39_4508_9CA8_D8DE65A7B8AD,ActionType=3585,Source=BinaryData,Target=SNAC_SetClientSSNLDefaults,)

MSI (s) (98:4C) [09:28:41:388]: Executing op: End(Checksum=0,ProgressTotalHDWord=0,ProgressTotalLDWord=4192952)

MSI (s) (98:4C) [09:28:51:185]: Assembly Error:The requested operation failed. A system reboot is required to roll back changes made.

MSI (s) (98:4C) [09:28:51:185]: Note: 1: 1935 2: {98CB24AD-52FB-DB5F-A01F-C8B3B9A1E18E} 3: 0x80070BC9 4: IAssemblyCacheItem 5: Commit 6: Microsoft.VC80.CRT,type="win32",version="8.0.50727.42",publicKeyToken="1fc8b3b9a1e18e3b",processorArchitecture="x86"

MSI (s) (98:4C) [09:28:51:185]: Assembly Error (sxs): To get more diagnostic information, enable the Component Based Servicing Log.

MSI (s) (98:4C) [09:28:51:185]: Product: Microsoft SQL Server Native Client -- Error 1935. An error occurred during the installation of assembly 'Microsoft.VC80.CRT,type="win32",version="8.0.50727.42",publicKeyToken="1fc8b3b9a1e18e3b",processorArchitecture="x86"'. Please refer to Help and Support for more information. HRESULT: 0x80070BC9. assembly interface: IAssemblyCacheItem, function: Commit, component: {98CB24AD-52FB-DB5F-A01F-C8B3B9A1E18E}

Error 1935. An error occurred during the installation of assembly 'Microsoft.VC80.CRT,type="win32",version="8.0.50727.42",publicKeyToken="1fc8b3b9a1e18e3b",processorArchitecture="x86"'. Please refer to Help and Support for more information. HRESULT: 0x80070BC9. assembly interface: IAssemblyCacheItem, function: Commit, component: {98CB24AD-52FB-DB5F-A01F-C8B3B9A1E18E}

MSI (s) (98:4C) [09:28:51:216]: User policy value 'DisableRollback' is 0

MSI (s) (98:4C) [09:28:51:216]: Machine policy value 'DisableRollback' is 0

Action ended 9:28:51: InstallFinalize. Return value 3.

Searched for “Return value 3” in SNAC log to pinpoint the exact cause of the failure. From the above error you could find that the issue was happening while installing assembly 'Microsoft.VC80.CRT which belongs VC++ redistributable component and seems corrupt so tried the below steps to repair it.

 

[Steps for Resolution]

===============

1. Go to START àRUN àtype in INSTALLER and press Enter.

2. Arrange the window in Details view.

3. Right click the header and click add columns.

4. Check the checkbox for Comments column.

5. In the comments column, look for Microsoft Visual C++ 2005 redistributable RTL.

6. Right click the msi and click Repair the VC++ 2005 redistributable.

7. The repair process will look for vcredist.msi in the temp folder and most probably it will not find it there and prompt to provide location for the same file.

8. Downloaded the VC++ 2005 redistributable from: https://www.microsoft.com/downloads/details.aspx?familyid=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displaylang=en

9. We need to extracted the exe using the following commands at command prompt:

a. C:\>vcredist_x86.exe /C

b. C:\>"VCREDI~1.EXE" /C

10. After running the above steps, we get the vcredist.msi extracted.

11. Provide the location for vcredist.msi for prompt in Step7.

Once the repair is complete, start the SQL Setup and this should help installing SQL Server successfully

 

Sanket Sao

SE, Microsoft SQL server

Reviewed by

Nickson Dicson & Mukesh Nanda

Technical Lead, Microsoft SQL Server.