切换VS2010以使用Windows 7.1 SDK

21 windows winapi visual-studio-2010

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

我已经安装了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"
Run Code Online (Sandbox Code Playgroud)

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

"C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\WindowsSdkVer.exe"
Run Code Online (Sandbox Code Playgroud)

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

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

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

还有其他任何建议/解决方法吗?

Pio*_*ost 21

对于所有使用Visual Studio命令提示符的人,我提到你必须修改VCVarsQueryRegistry.bat文件(它被称为(间接)%VSINSTALLDIR%\VC\vcvarsall.bat),它通过修改第26行来放置在%VSINSTALLDIR%\Common7\Tools文件夹中(通常C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools)

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

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

我希望微软的某个人解释为什么WindowsSdkVer.exeVS 2010不起作用...

  • 最好将其修改为"@for/F"令牌= 1,2*"%% i in('reg query"%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows"/ v"CurrentInstallFolder"')DO(`因此使用了使用`WindowsSdkVer.exe`选择的版本. (2认同)

小智 19

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


小智 2

看看这个页面吧伙计们。这将解决您的问题 ->构建使用 Windows SDK 的应用程序