【问题标题】:Switching VS2010 to use Windows 7.1 SDK切换 VS2010 以使用 Windows 7.1 SDK
【发布时间】:2011-05-04 22:42:34
【问题描述】:

我已经在我的开发机器上使用 VS2008 几年了,使用 windows SDK v7.1。

我已经安装了 VS2010,它使用的是 Windows SDK v7.0a,但我需要它才能使用 Windows 7.1 SDK(我在安装 VS2010 之前已经安装)。

当我运行 Windows SDK 7.1 配置工具,切换正在使用的 Windows SDK 时,该工具会更新 VS2008,但不会更新 VS2010。它报告的消息是:

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

配置工具随 Windows 7.1 SDK 一起安装,可在此处找到:

"C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\WindowsSdkVer.exe"

VS2010 继续使用 WSDK 7.0a,这非常令人沮丧,因为我需要进行 DirectShow 开发(所以我需要构建基类,这些基类没有随 WSDK 7.0a 版本发布)。

我是否正确地假设它没有更新 VS2010 设置,因为在我安装 Windows 7.1 SDK 时没有安装 VS2010?

我可以手动修复这个问题,还是应该卸载 Windows 7.1 SDK,然后重新安装?

对此还有其他建议/解决方法吗?

【问题讨论】:

标签: windows visual-studio-2010 winapi


【解决方案1】:

对于所有使用 Visual Studio 命令提示符的人,我提到您必须修改位于 %VSINSTALLDIR%\Common7\Tools 文件夹中的 VCVarsQueryRegistry.bat 文件(它被 %VSINSTALLDIR%\VC\vcvarsall.bat(间接)调用) C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools) 通过从

修改第 26 行
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A" /v "InstallationFolder"') DO (

@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1" /v "InstallationFolder"') DO (

我希望 Microsoft 有人解释为什么 WindowsSdkVer.exe 不适用于 VS 2010...

【讨论】:

  • 最好修改成@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO (这样使用WindowsSdkVer.exe选择的版本。
  • 不过,如果您按照@ivan_pozdeev 的建议进行操作,您还应该编辑下一行以检查CurrentInstallFolder 而不是InstallationFolder,否则它会中断。
【解决方案2】:

在项目属性 -> 配置属性 -> 常规中,将 Platform Toolkit 设置为 WindowsSDK7.1(或您要使用的任何版本)。请记住,当您执行此操作以适当地选择所有配置(发布、调试等)和所有平台(win32、x64 等)时。文档说您可以在解决方案属性中设置此选项,但似乎并非如此。

【讨论】:

【解决方案3】:

看看这个页面的家伙。这将解决您的问题 -> Building Applications that Use the Windows SDK

【讨论】:

  • 该页面上的说明不适用于 VS2010。有 cmets 试图纠正它,但那些也是错误的 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-28
相关资源
最近更新 更多