首页 > 编程语言 > 详细

C++第四十三篇 -- VS2017创建控制台程序勾选MFC类库编译报错

时间:2020-06-12 10:32:06      阅读:209      评论:0      收藏:0      [点我收藏+]

用VS2017创建控制台程序带MFC类库方法

1. File --> New --> Project

技术分享图片

2. Windows桌面向导

技术分享图片

3. 勾选MFC类库

技术分享图片

4. 创建成功

 

解决项目编译出错

1. 项目创建成功后编译报错界面

技术分享图片

原因分析:对比别人创建成功的项目,发现多了一个#include "framework.h"

解决方案:copy成功项目的framework.h头文件,并#include "framework.h",另外framework.h头文件中引用了targetver.h头文件,因此,将targetver.h头文件也copy过来

2. 编译成功后的界面

技术分享图片

3. framework.h

技术分享图片
#pragma once

#include "targetver.h"
#include <stdio.h>
#include <tchar.h>
#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 部分 CString 构造函数将是显式的
#define _AFX_NO_MFC_CONTROLS_IN_DIALOGS         // 移除对话框中的 MFC 控件支持

#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN            // 从 Windows 头文件中排除极少使用的内容
#endif

#include <afx.h>
#include <afxwin.h>         // MFC 核心组件和标准组件
#include <afxext.h>         // MFC 扩展
#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h>           // MFC 对 Internet Explorer 4 公共控件的支持
#endif
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h>                     // MFC 对 Windows 公共控件的支持
#endif // _AFX_NO_AFXCMN_SUPPORT

#include <iostream>
View Code

 

4. targetver.h

技术分享图片
#pragma once

// // 包含 SDKDDKVer.h 可定义可用的最高版本的 Windows 平台。
// 如果希望为之前的 Windows 平台构建应用程序,在包含 SDKDDKVer.h 之前请先包含 WinSDKVer.h 并
// 将 _WIN32_WINNT 宏设置为想要支持的平台。
#include <SDKDDKVer.h>
View Code

 

这样就不会编译出错了。

 

C++第四十三篇 -- VS2017创建控制台程序勾选MFC类库编译报错

原文:https://www.cnblogs.com/smart-zihan/p/13097458.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!