所以我刚刚获得了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文件不在include目录中,但这没有任何意义,因为我刚刚完成了Visual Studio 2010专业版的安装。我尝试卸载,删除所有Visual Studio文件,然后重新安装它,但问题仍然存在。任何人都可以告诉我发生了什么,我该如何解决这个问题?非常感谢你!
我在64位计算机上使用Windows 8。我整天试着谷歌搜索这个问题而没有好结果。
答案 0 :(得分:9)
我刚刚安装了VS2015并遇到了同样的问题。似乎new.h过去生活在VC文件夹下(例如C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ include),现在存在于SDK文件夹中(例如C:\ Program Files(x86)) \ Windows Kits \ 10 \ Include \ 10.0.10150.0 \ ucrt)。如果将其包含在包含文件夹列表中,则会在此时编译。
答案 1 :(得分:3)
右键单击您的项目,然后转到“属性”,转到“配置属性”,“VC ++目录”和“包含目录”:$(VCInstallDir)include;。也就是说,如果你在指定的目录中有new.h,即你的installationDir \ include
答案 2 :(得分:1)
尝试使用 VS2017构建工具进行构建时遇到此问题......
通过手动将“Windows Universal CRT SDK”软件包添加到安装中解决了这个问题。
答案 3 :(得分:1)
对我来说,这是因为我的解决方案的项目构建目标引用了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 Universal C Runtime(UCRT),因为它似乎位于ucrt
子文件夹下。
答案 4 :(得分:0)
我遇到了同样的问题,我通过删除所有“Microsoft Visual c + + Redistributable”安装解决了这个问题,然后修复了VS安装。
答案 5 :(得分:0)
尝试安装VS2010 SP1,它应该有帮助
答案 6 :(得分:0)
在将旧的VS2003解决方案导入VS2017之后,这个问题发生在我身上。
要修复此问题,我必须将项目设置>“常规”中的“ Windows SDK版本”更改为下拉列表中可用的最新“ 10.x.x.x”版本。