问题 无法打开源文件“afxwin.h”/“afxext.h”/“afxdisp.h”/“afxdtctl.h”/“afxcmn.h”/afxdisp.h等


我尝试在我的visual studio 2015 MFC上运行以前编写的MFC c ++代码,并安装了多层MFC库。

但是,我在这里仍然有12个关于缺失功能的错误:

IntelliSense: cannot open source file "afxwin.h" C1083 Cannot open include file: 'afxwin.h': No such file or directory cannot open source file "afxext.h"/"afxdisp.h"/"afxdtctl.h"/"afxcmn.h"/afxdisp.h etc....

我在哪里可以获得这些头文件?

我的设置再次是:

VIsual studio 2015终极MFC 安装了多字节MFC库 Windows 8 - 64位机器

谢谢!


4091
2018-04-27 14:26


起源

这些文件随Visual Studio一起安装。要么你搞砸了包含目录设置,要么没有安装它们。 - Captain Obvlious
哦,很高兴知道。问题在这里,你能不能让我知道目录是针对普通vs 2015终极设置的? - Curly
我在我的目录下找到了“afxwin.h”:C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ atlmfc \ include \我应该如何在我的代码中包含这个目录?谢谢! - Curly
我认为您需要做的就是在VC项目属性中选择适当的平台工具集。应该像“v140” - cha
我在这里自己想出来了。右键单击解决方案资源管理器中的外部依赖项,单击“类向导”。 \ include下的所有内容都将自动安装。 - Curly


答案:


我刚刚解决了类似的问题。以下是解决此问题的方法。

  1. 转到您的控制面板
  2. 导航到卸载/更改程序。
  3. 向下滚动,直到看到Visual Studio安装
  4. 点击更改
  5. 弹出窗口后,单击“修改”
  6. 在编程语言 - > Visual C ++下 确保选中“Microsoft基础类C ++”。如果没有选择它并单击更新。

12
2018-04-05 00:30



我在Visual Studio 2005中没有看到此选项(使用旧版本来定位旧版Windows CE 6.0应用程序)。在这种情况下有关如何安装此组件的任何建议? - iX3


物有所值。在重新安装VS2017后,我遇到了类似的错误。我从主安装程序安装了C ++功能,并创建了一个检查了MFC的新项目。我认为此时安装了“Microsoft基础类C ++”,但我一直收到这些错误。此外,在第一次保存和关闭解决方案后,如果我从最近使用的列表中打开解决方案,VS将无法加载项目,因为缺少依赖项。

什么对我有用

我使用VS2017直接打开了解决方案文件。最后,VS告诉我没有安装“Microsoft基础类C ++”并且给了我安装它的选项。我以前浏览过安装程序功能,但找不到此选项。

编辑

根据弗拉基米尔的评论如下......

2017年,Visual Studio Installer [“Microsoft基础类C ++”]位于修改/单个组件/ SDK ... / MFC和ATL支持(x86和x64)下


1
2017-10-17 20:14



在2017年Visual Studio安装程序中,它位于修改/单个组件/ SDK ... / MFC和ATL支持(x86和x64)下 - Vladimir Shutow
这对我帮助很大。我花了差不多半天时间搜索我应该安装哪个版本或哪些组件。 (y)谢谢你@VladimirShutow - Chintan