VS找不到windowssdkdir与VS中的环境变量宏

Visual Studio 2013(简称VS2013)编译报错:

"warning MSB8003: Could not find WindowsSDKDir variable from the registry.  TargetFrameworkVersion or PlatformToolset may be set to an invalid version number."

环境:VS2013 Community Update 5、VC++ 32控制台程序


问题分析:

以前使用VS的时候一直没有问题,这次重装系统后出现。重装VS时为了节省时间,只勾选了MFC for C++,没有完整安装,导致VS的环境变量设置不完全。

VS的环境变量与Windows操作系统的环境变量意义与作用是一样的,都是为了在设置路径时起到替换的作用,在填写路径时使用相对路径。当库函数等安装位置发生了变化,只用修改环境变量的值就可以起到全局修改的作用。

使用方法:

cmd中:setx -m OPENCV_DIR D:\opencv\vc12

设置后在系统变量里会出现对应的项

VS中:使用$符号加上括号调用,例如$(OPENCV_DIR)

Windows中的调用方法是%OPENCV_DIR%


VS中的环境变量——宏

这个问题在微软有过官方回复,让用户升级到Update 2,实际并没有什么用,我的版本是Update 5,是没有完整安装导致的,所谓完整安装也是装了一堆用不到的、“早已过时”了的东西。


这个问题在对VS不熟悉的时候很难解决,原因是微软把这个叫做宏Macros,真的新手摸不着头脑啊。

在VS设置中,编辑任意一个选项,点击下面的Macros,会列出所有VS中的环境变量。




解决办法1:设置项目属性,在Platform Toolset中设置为 2013 - XP,临时的解决办法。

解决办法2:安装WindowsSDK 8.1,自动设置好缺失的环境变量。

通过修改注册表的方法也可以修改环境变量,但是电脑中还是缺相关的SDK文件。




猜你喜欢

转载自blog.csdn.net/huanghxyz/article/details/79149597