【问题标题】:Visual Studio 2010 Professional: Cannot find include file "new.h"Visual Studio 2010 Professional:找不到包含文件“new.h”
【发布时间】:2013-10-15 20:54:29
【问题描述】:

所以我刚刚获得了 Visual Studio 2010 Professional,我创建了一个简单的 mfc 应用程序,添加了一些代码并且没有更改任何项目设置。当我尝试编译它时,我得到了这个错误:

1>------ Build started: Project: cadmenu, Configuration: Release Win32 ------
1>Build started 10/15/2013 3:44:26 PM.
1>InitializeBuildStatus:
1>  Touching "Release\cadmenu.unsuccessfulbuild".
1>ClCompile:
1>  stdafx.cpp
1>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\afx.h(54):  fatal error C1083: Cannot open include file: 'new.h': No such file or directory
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:00.06
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

如果我创建一个新的 mfc 应用程序并且不添加任何代码,也会发生这种情况。我搜遍了整台电脑,没有new.h。

我知道这是因为 new.h 文件不在包含目录中,但这没有任何意义,因为我刚刚完成了 Visual Studio 2010 Professional 的完整安装。我尝试卸载,删除所有 Visual Studio 文件,然后重新安装,但问题仍然存在。谁能告诉我发生了什么,我该如何解决?非常感谢!


我在 64 位计算机上使用 Windows 8。我整天都在谷歌上搜索这个问题,但没有好的结果。

【问题讨论】:

  • 如果您创建一个 MFC 应用程序并且添加任何代码会产生什么结果?
  • 同样的事情。它找不到new.h。我想是因为每个 mfc 应用程序都包含 afx.h,而 afx.h 包含 new.h,而 new.h 不在我的目录中。
  • <new.h> 在 Visual Studio 的标准包含路径中:\VC\include。这应该在您的包含路径中。有关设置包含目录的详细信息,请参阅VC++ Directories Property Page
  • 谢谢。我的问题是这个目录中没有 new.h 文件:(
  • 这意味着您的安装已损坏。如果您在未先卸载现有 Beta 的情况下安装了 Visual Studio,则可能会发生这种情况。还有报告称,如果您安装商业版而不先卸载现有的 Express 版,安装将失败。

标签: c++ visual-studio-2010 visual-studio


【解决方案1】:

我刚刚安装了 VS2015 并且遇到了同样的问题。似乎 new.h 曾经位于 VC 文件夹中(例如 C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include),现在位于 SDK 文件夹中(例如 C:\Program Files (x86) \Windows 工具包\10\Include\10.0.10150.0\ucrt)。如果你将它包含在你的包含文件夹列表中,它将编译过去。

【讨论】:

  • 还需要将 C:\Program Files (x86)\Windows Kits\10\Include\10.0.16299.0\ucrt 添加到库路径中。
【解决方案2】:

在尝试使用 VS2017 构建工具 构建时也遇到了这个问题...

通过手动将包“Windows Universal CRT SDK”添加到安装中解决了这个问题。

【讨论】:

    【解决方案3】:

    右键单击您的项目,然后转到“属性”,转到“配置属性”、“VC++ 目录”,然后在“包含目录”中:$(VCInstallDir)include;。也就是说,如果您在指定的目录中有 new.h,即您的 installationDir\include

    【讨论】:

      【解决方案4】:

      对我来说,这是因为我的解决方案具有引用 Windows SDK 10.0.10240 的项目构建目标,但 Visual Studio 2017 安装程序在仅升级 Visual Studio 期间立即删除了 10240 SDK 以及 Windows我的解决方案也需要的 8.1 SDK。

      我不得不去安装程序中的 Invidual Components 并手动重新检查 Windows SDK 10.0.10240 和 Windows 8.1 SDK,现在我又得到了 3 GB 的文件。

      经验教训:Visual Studio 2017 安装程序可以做的不仅仅是升级,如果您让它“升级”到另一个次要版本。

      我还可以建议进行验证,以便检查 Windows 通用 C 运行时 (UCRT),因为它似乎位于 ucrt 子文件夹下。

      【讨论】:

        【解决方案5】:

        在将旧的 VS2003 解决方案导入 VS2017 后,我遇到了这个问题。

        要修复它,我必须将项目设置中的“Windows SDK 版本”>“通用”更改为下拉列表中可用的最新“10.x.x.x”版本。

        【讨论】:

          【解决方案6】:

          我遇到了同样的问题,我通过删除所有“Microsoft Visual c++ Redistributable”安装解决了这个问题,然后修复了 VS 安装。

          【讨论】:

            【解决方案7】:

            尝试安装VS2010 SP1,应该会有帮助

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-02-07
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-07-13
              相关资源
              最近更新 更多