在Visual Studio 2010中未正确设置WindowsSdkDir

时间:2010-08-30 08:54:56

标签: visual-studio-2010 winapi

所以我现在已经搜索了很长一段时间,但无济于事!有没有人想出如何在visual studio 2010中更改$(WindowsSdkDir)宏,使其指向他们想要的任何版本的Windows sdk?

希望这可以引用所有在我之后搜索此内容的人。 :)

3 个答案:

答案 0 :(得分:10)

尝试使用VS2010和Windows 7 / .NET 4 SDK(v7.1)设置新系统时遇到了类似的问题。该解决方案与Visual Studio 2008的解决方案类似,但位于不同的注册表位置。您想要应用相同的编辑,但位置是

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows

用于32b Windows和

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows

for 64b Windows

此外,根据您的安装(对于32b和64b版本的Windows),您可能还需要更改HKEY_CURRENT_USER树中的相应密钥。

您想要编辑以下键以指向您要使用的SDK版本:

CurrentInstallFolder
CurrentVersion
ProductVersion

进行更改后,我重新启动了Visual Studio,并使用了相应的SDK版本。我不知道这是否是SDK安装程序中的错误(一个是为WindowsSDK v6.1记录的,但是没有为v7.1记录),或者它是否是设计的,但是在我的更改后,一切似乎都正确编译。

针对32b和64b Windows 7进行了测试。

答案 1 :(得分:10)

要定制单个Visual Studio 2010项目以使用特定版本的Windows SDK,请转到Project |单击属性,选择常规选项卡(在配置属性下),然后将“平台工具集”下拉菜单设置为指向要使用的SDK。 WindowsSdkDir宏将适当更改。

请记住对所有配置和所有平台进行此更改。

答案 2 :(得分:0)

[HKEY_CURRENT_USER\Software\Microsoft\Microsoft SDKs\Windows] 
"CurrentInstallFolder"="C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\"

请注意,与其他注册表位置相比,这里实际上不存在7.1的子键。不要混淆Visual Studio 2008无论如何都在这里搜索。