VS2010-MFC(利用MFC向导生成单文档应用程序框架)

摘要:
当谈到VC++和MFC时,VC++不能不提到MFC。MFC全称为Microsoft FoundationClasses,即Microsoft Basic类库。它是VC++的核心,是C++与Windows API的结合。它用C++彻底封装了Windows SDK(软件开发工具包)的结构和功能,还提供了一个应用程序框架,为软件开发人员完成了一些日常工作

 

一.VC++与MFC

       讲VC++免不了要提MFC,MFC全称Microsoft Foundation Classes,也就是微软基础类库。它是VC++的核心,是C++与Windows API的结合,很彻底的用C++封装了Windows SDK(Software Development Kit,软件开发工具包)中的结构和功能,还提供了一个应用程序框架,此应用程序框架为软件开发者完成了一些例行化的工作,比如各种窗口、工具栏、菜单的生成和管理等,不需要开发者再去解决那些很复杂很乏味的难题,比如每个窗口都要使用Windows API注册、生成与管理。这样就大大减少了软件开发者的工作量,提高了开发效率。

       当然VC++不是只能够创建MFC应用程序,同样也能够进行Windows SDK编程,但是那样的话就舍弃了VC++的核心,放弃了VC++最强大的部分。MFC也不是只能用于VC++中,它同样也可以用在Borland C++等编译器中,当然没有几个人这样做。

转自:VS2010/MFC编程入门之前言

 

二.使用VS2010应用程序向导生成单文档应用程序框架

 

1.点菜单栏File->New->Project,弹出New Project对话框,我们可以选择工程类型。

 

如果安装完VS2010以后第一启动时已经设置为VC++,则Installed Templates->Visual C++项会默认展开,而如果没有设置VC++,则可以展开到Installed Templates->Other Languages->Visual C++项。

因为我们要生成的是MFC程序,所以在“Visual C++”下选择“MFC”,对话框中间区域会出现三个选项:MFC ActiveX Control、MFC Application和MFC DLL。MFC ActiveX Control用来生成MFC ActiveX控件程序。MFC Application用来生成MFC应用程序。MFC DLL用来生成MFC动态链接库程序。当然我们要选择MFC Application

在对话框下部有Name、Location和Solution name三个设置项。意义如下:Name--工程名,Location--解决方案路径,Solution name--解决方案名称。这里Name我们设为“HelloWorld”,Location设置为“桌面”的路径,Solution name默认和Name一样,当然可以修改为其他名字,这里我们不作修改,也使用“HelloWorld”。

点“OK”按钮。

 

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第1张

 

2.这时会弹出“MFC Application Wizard”对话框,上部写有“Welcome to the MFC Application Wizard”,下面显示了当前工程的默认设置。第一条“Tabbed multiple document interface (MDI)”是说此工程是多文档应用程序。如果这时直接点下面的“Finish”按钮,可生成具有上面列出设置的多文档程序。但我们此例是要建立单文档应用程序,所以点“Next”按钮再继续设置吧。

 

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第2张

 

3.接下来弹出的对话框上部写有“Application Type”,当然是让选择应用程序类型,我们看到有四种类型:Single document(单文档)、Multiple documents(多文档)、Dialog based(基于对话框)和Multiple top-level documents。我们选择Single document类型,以生成一个单文档应用程序框架。单文档应用程序运行时是一个单窗口界面。

 

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第3张

此对话框的“Resource language”还提供语言的选择。

“Project style”可选择工程风格,我们选择默认的“Visual Studio”风格。

“Use of MFC”有两个选项:Use MFC in a shared DLL(动态链接库方式使用MFC)和Use MFC in a static library(静态库方式使用MFC)。选择Use MFC in a shared DLL时MFC的类会以动态链接库的方式访问,所以我们的应用程序本身就会小些,但是发布应用程序时必须同时添加必要的动态链接库,以便在没有安装VS2010的机子上能够正常运行程序选择Use MFC in a static library时MFC的类会编译到可执行文件中,所以应用程序的可执行文件要比上种方式大,但可以单独发布,不需另加包含MFC类的库。这里我们使用默认的Use MFC in a shared DLL。

点“Next”按钮。

 

4.此时弹出上部写有“Compound Document Support”的对话框,可以通过它向应用程序加入OLE支持,指定OLE选项的复合文档类型。本例不需要OLE特性,使用默认值“None”。点“Next”按钮。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第4张

 

5.弹出的新对话框上部写有“Document Template Properties”。“File extension”可以设置程序能处理的文件的扩展名。对话框其他选项还可以更改程序窗口的标题。我们都使用默认设置,点“Next”按钮。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第5张

 

6.此时弹出的对话框主题是“Database Support”。用于设置数据库选项。此向导可以生成数据库应用程序需要的代码。它有四个选项:

      None:忽略所有的数据库支持;

      Header files only:只包含定义了数据库类的头文件,但不生成对应特定表的数据库类或视图类;

      Database view without file support:创建对应指定表的一个数据库类和一个视图类,不附加标准文件支持;

      Database view with file support:创建对应指定表的一个数据库类和一个视图类,并附加标准文件支持。

      本例选择默认值“None”,不使用数据库特性。点“Next”按钮。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第6张

 

7.这时弹出的对话框是关于“User Interface Features”,即用户界面特性。我们可以设置有无最大化按钮、最小化按钮、系统菜单和初始状态栏等。还可以选择使用菜单栏和工具栏生成简单的应用程序还是使用ribbon。这里我们都选择默认设置。点“Next”进入下一步。

 

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第7张

 

 

8.此时弹出“高级特性”对话框。可以设置的高级特性包括有无打印和打印预览等。在“Number of files on recent file list”项可以设置在程序界面的文件菜单下面最近打开文件的个数。我们仍使用默认值。点“Next”按钮。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第8张

 

 

9.弹出“生成类”对话框。在对话框上部的“生成类”列表框内,列出了将要生成的4 个类:一个视图类(CHelloWorldView)、一个应用类(CHelloWorldApp)、一个文档类(CHelloWorldDoc)和一个主框架窗口类(CMainFrame)。在对话框下面的几个编辑框中,可以修改默认的类名、类的头文件名和源文件名。对于视图类,还可以修改其基类名称,默认的基类是CView,还有其他几个基类可以选择。这里我们还是使用默认设置。点“Finish”按钮。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第9张

 

应用程序向导最后为我们生成了应用程序框架,并在Solution Explorer中自动打开了解决方案。

VS2010-MFC(利用MFC向导生成单文档应用程序框架)第10张

 

三、编译运行生成的程序

点菜单中的Build->Build HelloWorld编译程序,然后点Debug->Start Without Debugging(快捷键Ctrl+F5)运行程序,也可以直接点Debug->Start Without Debugging,这时会弹出对话框提示是否编译,选择“Yes”,VS2010将自动编译链接运行HelloWorld程序。

 

嗯……生成helloworld时出现error了:      1>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

 

解决方法:

方案1:
点击“项目”-->“属性” --> “清单工具”,
然后选择"输入和输出’ --> ‘嵌入清单’,将后面的‘是’改成‘否’就可以了

方案2:在VS安装目录搜索cvtres.exe
发现有两个cvtres.exe文件,有的网友选择用最新的文件覆盖掉所有旧的cvtres.exe,
也有网友是删除旧cvtres.exe的文件。我是将旧 cvtres.exe 改名字了,以备恢复环境。
注意这两个文件都是一个版本号,但是生成时间只是相差1个小时,选择最新的那个。
也有搜索到好多cvtres.exe的 情况,这个就不清楚了,试试如何删除这些文件吧。
我的两个文件目录如下:
D:Program Files (x86)Microsoft Visual Studio 10.0VCinamd64
D:Program Files (x86)Microsoft Visual Studio 10.0VCin    参考:https://zhidao.baidu.com/question/1493935034926540979.html

 

我这边试了方案2后成功了。

 

然后运行,结果页面如下所示:

 VS2010-MFC(利用MFC向导生成单文档应用程序框架)第11张

 

转自:http://www.jizhuomi.com/software/141.html

免责声明:文章转载自《VS2010-MFC(利用MFC向导生成单文档应用程序框架)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇文件比较软件有哪些python获取知乎日报另存为txt文件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

elixir mix开发入门

备注:  简单使用mix 进行项目的生成,同时添加docker 构建支持 1. 生成项目 mix new mydemoproject 输出信息如下: * creating README.md * creating .formatter.exs * creating .gitignore * creating mix.exs * cre...

在Ubuntu下部署Flask项目

FlaskDemo 命名为test.py # coding=utf-8 from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "test" if __name__ == '__main__': app.debug = True...

Android开发环境搭建详细图解

所谓Android的开发环境,主要是以下两个组件,Android Software Developer Kit(Android软件开发工具包)和Eclipse(编辑器,提供很多方便功能)两大块,下面分别介绍他们的安装方法。 安装Eclipse 要安装Eclipse,首先要安装Java Developer Kit(JDK,Java开发者工具包)...

软件工程知识点总结

软件的概念: 软件是计算机系统中与硬件相互依存的另一部份,是程序、数据、以及相关文件的完整集合。程序是事先设计的功能要求执行的序列。数据是使得程序能征程操作信息的数据结构。文档是程序开发,维护和利用的有关图文和材料。软件的表现形式分为有形和无形,软件的有形表现在软件的的文档、程序、代码、用户界面、输出表报、等。软件的无形部分表现在:软件的内部逻辑,是软件自...

计算机软件产品开发文件编制指南

目的范围文件的使用者软件生存周期与各种文件的编制文件编制中的考虑因素 文件编制的管理工作 可行性研究报告项目开发计划软件需求说明书数据要求说明书概要设计说明书详细设计说明书用户手册操作手册模块开发卷宗测试计划测试分析报告开发进度月报项目开发总结报告(附件A、B、C、D、E、F、G、H、I、J、K、L、M、N) 国家技术监督局 1989-07-04批准 19...

使用mathjax在博客中完美显示数学公式,支持PC,手机浏览器

在博客园的设置选项里 有页头HTML的框内输入: <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script> 然后就支持tex,latex输入公式了! 如果不懂tex的朋友...