vs项目的sdk引用问题
问题详情
问题产生过程
- 安装VS2019后,创建了A项目,引用了高版本的SDK;编译通过
- 安装VS2017后,重新打开A项目,这时将其中SDK版本换成其他版本(低版本SDK);未编译
- 新建项目属性页(视图–解决方案–项目下Debugx64右键添加新项目属性表);编译失败
- 编译结果类似如下:
问题产生原理
vs2019安装时的sdk信息是写在注册表中的,不管新安装vs2017是否卸载vs2019都会出现这个问题,因为项目自带的属性管理表始终读的注册表的值
解决方案
- 修改$(WindowsSDK_IncludePath)
修改注册表或重新指定包含路径,对我这个问题不是特别适用,因为我找了一天,都没找全 - 重装(建议)
避免修改注册表失误,直接先全部卸载vs,再重新安装vs2017
后记
千万不要覆盖新版本!!!