SQL Server VC++ Installation voes

Listen with webReader
Published 23 June 12 12:30 PM | Johan Hedberg

I’ve installed SQL Server any number of times over any number of versions, but I have never had this problem before, and I am not sure why I got it now. However, since searching the web gave me very little in the way of a direct, working, solution I thought I’d write mine down. I was using Windows Server 2008 R2 Datacenter edition, SP1, patched to May 2012 standard, aka The Windows Server 2008 R2 image available in the Windows Azure Virtual Machine preview and installing SQL Server 2008 R2 Developer edition onto it. Now, I don’t think they are related, but I am not ruling it out that there is an issue in some way with that image. Since I am not doing anything but starting the image and running the installation which I have previous downloaded and un-packed from its ISO on a separately attached data drive.

The error I am getting is this:

The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail. (Exception from HRESULT: 0x800736B1).

I tried several times, and often this error would occur during install, but on the fifth (or so) attempt the install was successful and all looked to have installed fine, until I tried opening SQL Server Management Studio (SSMS). And got the exception there instead.

Now following the instructions in the exception text I did two thing, first – check the event log, where I found this:

Activation context generation failed for "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe".Error in manifest or policy file "C:\Windows\WinSxS\manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest" on line 0. Invalid Xml syntax.

Now looking through the event log I could see that I got this error for a number of other applications and services as well, and that ssms wasn’t alone in this.

Next, I ran sxstrace, ie (from an elevated command prompt):

sxstrace trace –logfile:trace.log

The I tried to start ssms to produce the error, which it did. So then I ran:

sxstrace parse –logfile:trace.log –outfile:trace.txt

(More on the sxstrace tool here).

The trace file, among other things, gave me this (similar) information:

INFO: Parsing Manifest File C:\Windows\WinSxS\manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest.
    INFO: Manifest Definition Identity is (null).
    ERROR: Line 0: XML Syntax error.
ERROR: Activation Context generation failed.

This file is from the Visual Studio C++ 2005 Service Pack (SP) 1 Redistributable Package. So I proceeded to download and install both the original 2005 Redistributable (x86, x64) and SP1 (x86, x64), hoping that would fix the problem and correct the manifest file. Not so for me.

I still wanted to see if the error could be fixed by “normal” procedures so I ran System File Checker (SFC). It produced the following result:

sfc /scannow

Beginning system scan.  This process will take some time.

Beginning verification phase of system scan.
Verification 100% complete.
Windows Resource Protection found corrupt files but was unable to fix some of th
em.
Details are included in the CBS.Log windir\Logs\CBS\CBS.log. For example
C:\Windows\Logs\CBS\CBS.log

The log file contain this (snipped somewhat for readability):

Manifest hash for component [ml:280{140},l:152{76}]"x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1" does not match expected value.
Expected:{l:32 b:43e8b1d9f404eb67105ab15282fd01f5bf4cd30f7f0c5d1250d11e9384ae9cc5}
Found:{l:32 b:d47fec989a9ad0351d4effd5984343181925f15919245da2a0609e1c5d68f280}.
Unable to load manifest for component [ml:280{140},l:152{76}]"x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1"
[SR] Cannot verify component files for Microsoft.VC80.ATL, Version = 8.0.50727.4053, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope neutral, PublicKeyToken = {l:8 b:1fc8b3b9a1e18e3b}, Type = [l:10{5}]"win32", TypeName neutral, PublicKey neutral, manifest is damaged (TRUE)

At this point I gave up on any form of allowing installers or the system to fix the problem for me and went at the file myself using Advanced guidelines for diagnosing and fixing servicing corruption. The file is readable (although empty), but I cannot edit it (even if I am an administrator). Only SYSTEM has access to the file. So to be able to edit it I must first take ownership of it and grant ACLs:

>takeown /f C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.1833_none_d1c5318643596706.manifest

SUCCESS: The file (or folder): "C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.1833_none_d1c5318643596706.manifest" now owned by user "JEHBTS5\Administrator".

>icacls C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.1833_none_d1c5318643596706.manifest /grant administrators:F
processed file: C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.1833_none_d1c5318643596706.manifest
Successfully processed 1 files; Failed processing 0 files

>takeown /f C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest

SUCCESS: The file (or folder): "C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest" now owned by user "JEHBTS5\Administrator".

>icacls C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest /grant administrators:F
processed file: C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest
Successfully processed 1 files; Failed processing 0 files

Now I can edit the file. As for the content I simply took it of another machine in which it existed and did not seem to have any issues. The content is this:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright © 1981-2001 Microsoft Corporation -->
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <noInheritable/>
    <assemblyIdentity type="win32" name="Microsoft.VC80.ATL" version="8.0.50727.4053" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"/>
    <file name="ATL80.dll" hash="6d7ce37b5753aa3f8b6c2c8170011b000bbed2e9" hashalg="SHA1"/>
</assembly>
After saving the file I am (at least seemingly to this point) rid of the problems.
Filed under: , , ,

Comments

# Conor said on June 24, 2012 05:57 AM:

Hi Johan,

I too got this exact same error on the Windows Azure VM (Windows Server 2008 R2 Datacenter) after installing a piece of s/w after SQL Server 2008R2 was installed, I didn't have time to debug it so I rolled back and started again, it worked the second time for me with installing the s/w first and then SQL, I think there might be a bug somewhere in the image, might be worth filing it with the Azure Team for further investigation.

Cheers

# Robert said on June 25, 2012 09:15 PM:

Thank You very much. After following your instructions I have sucessfully installed Biztalk 2010 Developer on Azure VM 2008 R2. Many thanks!!

# Johan Hedberg said on June 25, 2012 10:42 PM:

@Conor Yeah, I got different results I installed as well. But never the result I wanted. But congratulations ;)

@ Robert Glad it helped. It's a pain getting errors like these so it's a good thing when it helps someone else get passed it so much quicker. That makes up for the time you spend writing it up.

# Oleg said on July 1, 2012 04:50 PM:

Tahnks you very much Johan.

We had the same issue in 2 scenarios.

First when installing SQL 208R2 on Win 2008 Azure.

New VM, new default SQL installation. Never had this error before. We decided not to mess with this and created new VM. Second time installation was completed without errors.

At this point we decided to create an image for this VM.

After creating the new VM from this image, the "side-by-side" error appeared again.

We have followed the instruction in this post and the error has gone away.

Thanks for the post.

Hopefully this issue is addressed by MS.

# agorilla said on July 2, 2012 12:51 AM:

You are awesome! i was clueless what to do, same azure VM same windows version, my problem was with sql server 2008r2 express edition

# Philip said on July 4, 2012 01:11 PM:

Johan, thanks so much for taking the time to post this solution. We had the exact same problem attempting to install SQL Server 2008 R2 onto an Azure VM. Had tired everything we could until stumbling across this post. Problem was resolved in 2 minutes. Kudos and thanks again.

# Umair said on July 26, 2012 02:44 PM:

Thanks for this. Exactly the same issue with exactly the same manifest file. Your solution saved a training class full of people !!!

# Chris said on August 14, 2012 05:10 PM:

This article is a lifesaver. I tried installing C++ redistributables with no luck.  Copying and pasting the commands into the command prompt gave me access to the files that I needed.  I then copied and pasted valid xml from a working server.  Wouldn't you know...things just worked after that...no more errors.  Thanks!!!

# Roger said on September 12, 2012 05:02 PM:

Hi, I'm struggling with this issue too, where is the XML file you refer to. I only have a DLL file in the C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest

folder.

Thanks

# Kostas said on September 19, 2012 03:56 PM:

Thank you very much. You saved for three days work.

# Max said on October 1, 2012 01:18 PM:

Had the same problem on an Azure-Server and fixed it like a charm.

Thanks a Lot!

# Phillip said on October 9, 2012 06:18 PM:

This worked beautifully, same situation as above, getting the error after installing SQL 2008 R2 on Azure Win 2008 VM.  Thank you for the help!

# Nigel said on October 10, 2012 10:17 AM:

Perfect - worked for me also when SQL failed to start on Azure

# goAccord said on October 20, 2012 07:30 PM:

How do I edit the xml file? I have finished the steps provided by Johan. C:\Windows\winsxs\Manifests\x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.manifest

Please help. Thanks a lot

# Kevin said on October 20, 2012 10:36 PM:

I don't understand it, but it works.  Awesome, well done!

Azure VM running windows server 2008r2 with sql server 2008r2 sp1 (with smms)

Working as advertised!

# Ryan Robitaille said on October 25, 2012 06:16 PM:

Many thanks for this. Just started on Azure VMs and had never seen this error before. Lost a few hours yesterday failing to fix it - this did the trick.

The file that was empty (well, full of whitespace that is) for me was: C:\Windows\WinSxS\manifests\amd64_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_8a1a02152edb659b.manifest

Cheers!

# Johan Hedberg said on October 26, 2012 11:37 PM:

@goAccord any text editor will do.

# Paul Keister said on November 6, 2012 07:20 AM:

Thank you very much, Johan. I was on my 2nd time around on this problem with Azure Windows 2008 R2 with SQL Server 2008 R2 SP1, specifically Management Studio Express. Clearly there's a problem with the Azure image, because the first time I hit this wall I went all the way back to a new VM with a blank image and hit it again. As was noted in some of the comments, it was just one manifest file that was giving me problems. In my case it was x86_microsoft.vc80.atl_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d1c738ec43578ea1.

Your post saved my sanity - I will definitely buy you a beer the next time you visit San Francisco!

# Stephen W. Thomas BizTalk MVP said on November 12, 2012 03:14 PM:

A few days ago BizTalk 2013 Beta was announced and released for download .&#160; The plan is to make

This Blog

News

    Messenger

    Twitter Updates

      Follow me on twitter

      Visitors

      Feedburner Subscribers

      Locations of visitors to this page

      Disclaimer

      All material is provided AS IS voiding any thinkable or unthinkable effect it might have for any use whatsoever. There... is that clear enough ;)

      Pages

    Syndication