Using the Win 7 SDK Build Environment with VS 2008

Changes have been made to the Windows SDK build environment and how the SDK interacts with MSBUILD and Visual Studio 2008.   This post applies to the RTM release of the Windows SDK for Windows 7 and .NET Framework 3.5 SP1

What changed with the Windows SDK for Windows 7?

The Windows SDK for Server 2008 sets a registry key upon installation to identify the SDK as the “current” SDK to use when building.  This key is used by the VC++ toolset in both Visual Studio 2008 and in the Windows SDK build environment:

  • On an X86 computer: HKLM\SOFTWARE\Microsoft\Microsoft SDKs\Windows

  • On an X64 or IA64 computer: HKLM\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows

The Windows SDK for Windows 7 does not set this key during installation in order to avoid unexpected changes to Visual Studio 2008.  To set the Windows SDK used by Visual Studio, use the Windows SDK Configuration Tool. 

Out-of-the-box experience with the Windows SDK for Windows 7

If you install the Windows SDK for Windows 7 on a clean computer and create an application with the SDK build environment, the SDK will use the Windows 7 headers, libraries and tools that are included with the SDK.


If Visual Studio 2008 is installed, MSBuild and/or VCBuild will default to the headers, libraries and tools that have been previously integrated with Visual Studio 2008, in most cases, this is the (Vista-level) Windows SDK v6.0a. If this is the case, the Windows SDK build environment will display a warning when launched.


How to use the Windows SDK for Windows 7 headers, libraries and tools with Visual Studio 2008

Use the Windows SDK Configuration Tool to set the Windows 7 SDK as the “current” SDK for MSBuild and VCBuild. This will update the Windows 7 SDK build environment and the Visual Studio 2008 IDE build environment to use the Windows 7 SDK headers, libraries and tools.  You can also use this tool to switch it back again.


To run the GUI version of the Windows SDK Configuration Tool, go to Start, All Programs, Microsoft Windows SDK v7.0, Visual Studio Registration, Windows SDK Configuration Tool.

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.

Karin Meier-Magruder
Program Manager
Windows SDK Team

Comments (10)

  1. Laserson says:

    There are some troubles with VS2008 SP1 integration. Windows SDK Configuration Tool  couldn’t determine that i have installed IDE but it was installed before SDK installation. Service Pack 1 for VS was also installed. VS reinstalling didn’t help…

  2. DerekN (Windows SDK) says:

    We are very sorry for the issue that you encountered with this tool. A bug has been recently found in this tool, it can not successfully parse version numbers of Visual Studio in some language culture of Operating System (e.g. French, German, etc). You can get the current culture of your OS from Control Panel->Regional and Language Options->Formats tab, where you will see what is the “Current Format” on your system.

    We do have a work around for this problem. You can use command line version of this tool. From the Windows SDK command prompt and type “WindowsSdkVer.exe –version:v7.0” in order to integrate Windows 7 SDK with Visual Studio 2008.

  3. jorikdima says:

    I also has some problems in integrating Win7SDK and Visual Studio 2008 SP1. I use Windows7 Home Basic x64 RU.

    When I try to make WinSDK 7.0 as Current SDK via Windows SDK Configuration tool I see message like:

    "Your system doesn’t have VisualStudio 2005 or 2008 installed". But I have it installed before with SP1!

    What can I do?


  4. Gerhard says:


    read the post above yours.


  5. Test says:

    I Install SDK First , after Install SP1 , Work fine .

  6. Mike says:

    Same problem for me with Spanish Win7x64. The workaround works perfectly, thanks a lot!

  7. Bill says:

    running: WindowsSdkVer.exe -version:v7.1

    "The Windows SDK Configuration Tool has successfully set Windows SDK version v7.1 as the current version for Visual Studio 2008."

    That's great … wait… I have Visual Studio 2010 Express.

    No joy.

  8. Rikke says:

    Even though everything appeared to be fine when using the configuration tool, it seems like when building the 6.1 version is still being used. (Visual Studio 2008, English Windows 7)

  9. wb says:

    On Windows 7 x86, vs2008 SP1 I tried installing Windows SDK 7.1. It says it's alright. Using the command line tool to set the current SDK and the GUI version (after installing English), it says it's using the 7.1 SDK, but it isn't. Include files still show up with "9.0" in the path and generating executables for msvcrt, still msvcr90.dll is referenced.

    Devenv.exe still calls the 9.0 VcBuildHelper.exe, which seems to only use the includes of the SDK 7.1 but neither the vs2010 compiler nor libraries.

    Even using msbuild instead of vs2008 gives me the same result.

    How can I compile with the vs2010 compiler and libraries to produce executables, which link against the msvcr100.dll (without uninstalling vs2008)? Please help!

  10. Amit says:

    Can I target to v7.0 only for my project, and not the entire Visual Studio? If vcbuild has /useenv argument, then isn't there something in the project settings?