Installing Windows SDK for Server 2008 (v6.1) after VS2008 SP1 causes conflicts with Security Update (KB971092)


Issue: If you install the Windows SDK for Windows Server 2008 and .NET Framework 3.5, on top of Visual Studio 2008 Service Pack1, some CRT files will revert  back to RTM version.  (See this post for more information about this issue) This can cause conflicts when you install patches or updates such as the Security Update for Microsoft Visual Studio 2008 Service Pack 1: July 28, 2009 (KB971092), which may lead to compile errors similar to this:


· error C2039: ‘_Swap_adl’ : is not a member of ‘std’    c:\program files\microsoft visual studio 9.0\vc\include\xutility    2764


· error C3861: ‘_Swap_adl’: identifier not found    c:\program files\microsoft visual studio 9.0\vc\include\xutility    2764


Cause: This problem occurs when you install the Windows SDK for Windows Server 2008 and .NET Framework 3.5 on top of a post-RTM Visual Studio 2008 Service Pack, Feature Pack, or QFE. Visual Studio 2008 and the Windows SDK share compiler and CRT packages. Because the Windows SDK v6.1 includes the RTM version of the CRT, installing the Windows SDK second causes any non-versioned CRT files to be reverted back to Visual Studio 2008 RTM version.  When you install a service patch, the patch will assume that all the SP1 files are still present.


Workaround: Ensure that you are using the Visual Studio 2008 SP1 version of the CRT by installing the Windows SDK for Windows Server 2008 and .NET Framework 3.5 first, then re-installing Visual Studio 2008 SP1.  Then you can apply the Security Update. 


Caution: Running “Repair” on the Windows SDK will cause the CRT files to go back to RTM state and should be avoided.


Karin Meier-Magruder
Program Manager
Windows SDK Team


Send your thoughts to the Windows SDK Feedback alias.  Tell us how you use the SDK and what we can do to improve your development experience.


The MSDN Windows SDK Developer Center is the place to find resources and links to Windows SDK products, release notes, technical articles, and more.

Comments (4)

  1. Nick42 says:

    This is probably obvious, but it’s bugs like this which make people hesitant to install security updates from MS, which likely contributes more to the overall insecurity of the Windows ecosystem than any amount of security related code reviews. Something to think about.

    BTW, for reference, just uninstalling the security update does not fix the problem, and just reinstalling VS 2008 SP1 also does not fix the problem. Now trying the uninstall/reinstall SP1 approach, right after I disable automatic security updates forever.

  2. Haven’t the Windows Update system solved these old Windows NT4 Service Pack issues (Ensure the latest DLL surviees, Ensure updates are compatible. Ensure that when installing new features then it automatically applies the lastest updates). Why doesn’t other Microsoft products make use of this system ?

  3. Brian Cost says:

    Nick42 and Snakefoot we hear your concerns and am sorry you have encountered this scenario.  We are reviewing how we can improve in this area and your feedback has been helpful.

    Thank you

    Barry R. Butterklee

    Windows SDK

  4. BFields says:

    I don’t see a recovery solution mentioned… What do we do if we’ve inadvertently installed the SDK over top of VS2008 SP1?

    Thank you.