WindowsSdkDir在Visual Studio 2010中设置不正确

21

我已经搜索了相当长的时间,但仍然没有结果!有没有人弄清楚如何更改Visual Studio 2010中的$(WindowsSdkDir)宏,以使其指向他们想要的任何Windows SDK版本?

希望这能成为那些在我之后会进行搜索的人的参考。:)

3个回答

11

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

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


+1 感谢这个 - 它帮助我在没有 Visual Studio 的服务器上解决了一个问题。 - jdasilva
1
谢谢!我认为这应该是被接受的答案。 - denim

10

当我尝试使用VS2010和Windows 7/.NET 4 SDK (v7.1)来配置一个新系统时,我遇到了类似的问题。解决方法与Visual Studio 2008相似,但注册表位置不同。您需要应用相同的编辑,但位置不同。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows

适用于32位Windows系统

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

针对64位Windows系统,你可能需要更改注册表中HKEY_CURRENT_USER tree的相应键值来解决问题,具体取决于你的Windows安装版本(32位和64位)。

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

CurrentInstallFolder
CurrentVersion
ProductVersion

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

已在32位和64位Windows 7上测试。


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

请注意,与其他注册表位置相反,这里实际上可能不存在7.1的子键。 不要被迷惑,Visual Studio 2008仍然会在此处搜索。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接