1、MFC介绍及环境搭建

MFC全程为Microsoft Foundation class Library,即微软的基本类库,MFC实际上是一个庞大的文件库,它由指向文件和源文件组成。

  首先,打开visual2017,进行如下操作:

  此时,会发现新建项目中无法找到创建MFC工程

   这是因为没有配置MFC开发环境,关闭visual studio打开visual studio installer

  选择修改,可以打开如下窗口

  勾选后,点击修改,此时就进入了安装界面,这里需要等待15分钟左右

2、利用向导生成MFC应用程序

 

 修改完成后,点击启动,新建项目可以看到MFC已经添加到了visual studio了

  点进MFC后,选择文件路径,创建项目名文件名后点击确定 既可以进入MFC应用程序的类型配置界面

应用程序类型:

单文件:为应用程序创建一个单文档界面(SDI)结构。在此类应用程序中,文档的框架窗只能容纳一个文档。

多文件:为应用程序创建一个多文档界面(MDI)结构。在此类应用程序中,文档的框架窗可以容纳多个文档。

选项卡式文档:将每个文档放置到单独的选项卡上。

基于对话框:为应用程序创建一个基于对话框的结构。

使用HTML对话框:只适用与对话框应用程序。从CDHtmlDialogClass(而不是CDialogClass)派生对话框类。

多个顶级文档:为应用程序创建一个多顶级结构。在此类应用程序中,当单击【文件】菜单上的【新建】时。应用程序会创建一个其父窗口隐式为桌面的窗口。新的文档框架会显示在任务栏中,并且不局限于应用程序窗口的工作区。

然后单击【生成】->【生成解决方案】

单击【调试】->【开始执行】

运行完成后

打开项目所在文件夹->Debug文件夹,可以看到生成的.exe文件

双击.exe文件可以看到运行结果。

3、项目的文件组织

1、解决方案和项目文件

  通过调试后,解决方案的文件夹下包含:.sdf文件、.sln文件、.suo文件和.ipch文件夹。.sdf文件和ipch文件夹与智能提示、代码恢复、团队本地仓库等有关。.sln文件和.suo文件为MFC自动生成解决方案文件,它们包含当前解决方案中的项目信息,存储解决方案的设置。

  项目相关文件包括项目文件夹下的.vcxproj文件和.vcxproj.filters文件。.vcxproj文件是MFC生成的项目文件,包含当前项目的设置和项目所包含的文件等信息。.vcxproj .filters文件存放项目的虚拟目录信息,也就是在解决方案浏览器中的目录结构信息,如图所示:

2、应用程序源文件和头文件

  应用程序向导会根据应用程序的类型(单文档、多文档或基于对话框的程序)自动生成一些头文件和源文件。如图所示。

3、资源文件

  一般使用MFC生成程序都会有对话框、图标、菜单等资源,应用程序向导会生成资源相关文件:res目录、*.rc文件和Resource文件。

  res目录:项目文件夹下的res文件夹中含有应用程序默认图标、工具栏使用的图标等图标文件。

  *.rc:包含默认菜单定义、字符串表和加速键表,指定了默认的About对话框和应用程序默认图标文件等。

  Resource.h:含有各种资源的ID定义。

4、利用向导生成基于对话框的应用程序

  

运行结果如下:

visual2017专业版MFC编程环境搭建及第一个MFC程序的创建的更多相关文章

  1. Cesium入门2 - Cesium环境搭建及第一个示例程序

    Cesium入门2 - Cesium环境搭建及第一个示例程序 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 验 ...

  2. ArcGIS API for JavaScript开发环境搭建及第一个实例demo

    原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3. ...

  3. scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld

    scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld 学习了: http://blog.csdn.net/wangmuming/article/details/3407911 ...

  4. Vue环境搭建及第一个helloWorld

    Vue环境搭建及第一个helloWorld 一.环境搭建 1.node.js环境安装配置  https://www.cnblogs.com/liuqiyun/p/8133904.html 或者 htt ...

  5. 使用IDEA写Python之pytest环境搭建及第一个程序编写

    一.准备篇 Python环境:3.8.3 开发工具:IDEA,对你没有看错 二.IDEA下安装开发环境 1. python的下载 https://www.python.org/downloads/ P ...

  6. SpringBoot环境搭建及第一个程序运行(详细!)

    spring boot简介 spring boot框架抛弃了繁琐的xml配置过程,采用大量的默认配置简化我们的开发过程. 所以采用Spring boot可以非常容易和快速地创建基于Spring 框架的 ...

  7. FFmpeg 开发环境搭建及第一个程序 Hello FFmpeg 编写

    1. FFmpeg 的安装 ./configure make make install 默认会将 FFmpeg 安装至 /usr/local 目录下(可通过 configure 使用 "-p ...

  8. go语言开发环境安装及第一个go程序

    下载Go语言开发包 大家可以在Go语言官网(https://golang.google.cn/dl/)下载 Windows 系统下的Go语言开发包,如下图所示. 安装Go语言开发包 双击我们下载好的G ...

  9. android 串口开发第一篇:搭建ndk开发环境以及第一个jni调用程序

    一:ndk环境搭建 1:开发环境 我使用的是android studio 2.3.3版本,搭建ndk开发环境比较简单,打开File----Settings----Appearance&Beha ...

随机推荐

  1. 小程序开发------mpvue开发时间轴

    亲们支持我的新博客哦==>地址(以后更新会尽量在新博客更新,欢迎大家访问加入我的后宫w) ) 效果展示: 技术栈:mpvue demo==> 代码:

  2. python——eval()函数

    eval()函数用来执行一个字符串表达式,并返回表达式的值. 语法:eval(expression[, globals[, locals]]) x = 4 print(eval('3 * x'))12 ...

  3. 学习:D3

    http://www.ourd3js.com/wordpress/?p=196 http://www.ourd3js.com/demo/rm/R-9.2/force.html 力导向图(那个可以拖拽的 ...

  4. __iter__ 和 __next__

    class F: def __init__(self,x): self.x = x def __iter__(self): #把对象 变成可迭代对象 return self def __next__( ...

  5. iphone 开发h5 踩过的坑

    html,body{ -webkit-text-size-adjust: none; }  // 当需要在中文版chrome浏览器中显示小于12px的字体时,而且此时页面放大效果会被阻止 html,b ...

  6. 一分钟搭建Spring Boot

    1.首先你的电脑需要安装jdk.Apache Maven.Intellij IDEA 2.新建项目  (敲重点,有的同学有没有Spring Initializr 这个请到本文章后面看安装步骤) 3.选 ...

  7. 高性能迷你React框架anujs1.0.5发布

    实现对createFactory的支持,优化scheduler与dispose机制,提供ReactShim文件,跑通公司内部4套测试 npm i anujs 或者使用架手架 https://githu ...

  8. week07 13.4 NewsPipeline之 三 News Deduper

    还是循环将Q2中的东西拿出来 然后查重(去mongodb里面把一天之内的新闻都拿出来,然后把拿到的新的新闻和mongodb里一天内的新闻组一个 tf-idf的对比)可看13.3 相似度检查 如果超过一 ...

  9. Mybatis控制台打印sql

    mybatis-config.xml配置如下: <configuration> <settings> <setting name="lazyLoadingEna ...

  10. 深入浅出PF 学习笔记---资源文件

    引用   xmlns:sys="clr-namespace:System;assembly=mscorlib" <Window.Resources><sys:St ...