在Visual Studio 2017上使用VC++ 2015工具链时,ATL头文件丢失
问题描述:
我正在使用Visual Studio 2017进行C++项目(使用VS 2015创建)。我得到以下错误:在Visual Studio 2017上使用VC++ 2015工具链时,ATL头文件丢失
1>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\include\afx.h(345): fatal error C1083: Cannot open include file: 'atltrace.h': No such file or directory
我如何安装ATL /在VS 2015年工具链MFC头?
详细
- “平台工具集” 设置(在 “项目属性/常规/平台工具集”)
- 设置为“的Visual Studio 2015年(V140),
- 改变平台工具集到“Visual Studio 2017(v141)编译好。
- 文件在光盘上
- 的包括2015年VS目录(
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\include\
)包含afx*.h
文件,但没有atl*.h
文件。 - 这些丢失的文件似乎属于
VC_ATL.Headers.msi
(“Visual C++ Library ATL Headers Package”)(我在另一台机器上检查过这些文件)。我无法获得相应的msi安装。 (我从另一台机器拿走了msi)错误:“要安装此产品,请运行Setup.exe。[...]”。 - VS 2017的各自目录(
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.11.25503\atlmfc\include\
)确实包含这些文件。
- 的包括2015年VS目录(
- 安装
- “Windows桌面开发与C++/VC++ 2015.3 V140工具集为桌面(X86,X64)” 被选中。
- 在我看来,v140工具集缺少ATL/MFC头文件。
- “使用C++/MFC和ATL支持的Windows桌面开发(x86和x64)”似乎并不相关,似乎是关于VS 2017版本。
- VC++ redistributable似乎不相关,因为那些不包含头文件。
答
有一个blog post有关Visual C++生成工具2015年构建工具都在一个独立版本同时发布,而无需安装Visual Studio 2015年:
The Build Tools are the same C++ tools that you get with Visual Studio 2015 but they come in a scriptable standalone installer that only lays down the tools you need to build C++ projects.
微软已经包括ATL/MFC 。
他们可以从http://landinghub.visualstudio.com/visual-cpp-build-tools下载。确保选择默认取消选择的“ATL和MFC”。
当我将项目升级到使用v140工具集时,关闭并重新打开VS 2015后,我的项目未加载。当我试图加载它时,VS告诉我我需要安装这些工具并将我带到安装程序。尽管我已经安装了所有的VS 2015,但看起来我没有。 –