8

尝试编译简单的 hello world c++ 程序时遇到问题。

#include <iostream>

int main()
{
    std::cout << "hello world" << std::endl;
    return 0;
}

其中的错误是:
无法打开源文件“errno.h”

使用控制台 ( c:\> dir errno.h /s) 快速搜索显示该文件位于多个目录中:
C:\LegacyApp\VisualStudio2013\VC\crt\src
C:\LegacyApp\VisualStudio2013\VC\include
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\crt\src
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt

我的项目默认属性包括以下宏: $(VC_IncludePath);$(WindowsSDK_IncludePath);

这将解析为:
C:\LegacyApp\VisualStudio2015\VC\include
C:\LegacyApp\VisualStudio2015\VC\atlmfc\include
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt
C:\ Program Files (x86)\Windows Kits\8.1\Include\um
C:\Program Files (x86)\Windows Kits\8.1\Include\shared
C:\Program Files (x86)\Windows Kits\8.1\Include\winrt

C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt我的系统上不存在该文件夹。

好像我想将版本切换10.0.10240.010.0.10150.0

如何编辑宏的默认值VC_IncludePath

这里有更明智的做法吗?

4

2 回答 2

8

似乎10.0.10240.0您的机器上安装的 Windows 10 SDK 版本已损坏。您可以重新安装它或使用计算机上安装的其他版本。

如果正确安装了 Windows 10 SDK 版本10.0.10150.0,您应该可以在您的 VC++ 项目中使用它。要将项目配置页面上的Target Platform Version更改为. 该值应该在下拉列表中的其他值中。General10.0.10150.0

否则重新安装Windows 10 SDK并使用最近安装的版本。

于 2016-12-09T16:15:02.307 回答
5

查看使用项目属性,特别是属性页部分。

有一个类似的 SO 问题,如何修改 Visual Studio 2015 预定义的宏?答案是修改文件

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Common.props

但我会首先尝试使用第一个链接中的预期属性。

于 2016-12-09T13:07:26.173 回答