MFC项目移植详细实现(有图)

实现目标

  针对一个已有的界面复杂的mfc项目,移植到新建的mfc项目当中去,使其正常运行。

实现背景

  在学习mfc时,已画好一个较复杂的mfc界面。后面希望对原有mfc项目进行备份,再在新建的mfc项目上拷贝代码进行后续编程。但新建项目后,重画mfc界面嫌麻烦,故想用更简单的方法实现mfc项目的移植。

本地环境

  操作系统:windows 7
  编程工具:VS2017
  界面实现:MFC

实现步骤

1、新建项目

  点击VS菜单栏上“文件”->“新建”->“项目”,选择“MFC应用程序”点击“确定”新建mfc项目(之后选择默认选项,直接点击“完成”也可以)。
在这里插入图片描述
  在“应用程序类型”上选择“基于对话框”,在“使用MFC”选择“在静态库中使用MFC”。
在这里插入图片描述
  取消勾选“关于框”(使mfc项目结构简单点,若勾选也行)。
在这里插入图片描述

2、添加已有mfc项目

  在VS菜单栏上点击“文件”->“添加”->“现有项目”,选择已有的mfc项目的*.vcxproj文件进行添加。在此,我选择添加的文件是“MFC.vcxproj”。
在这里插入图片描述
在这里插入图片描述
  添加成功后,新建项目的解决方案会出现2个项目。其中MFC项目是已有的项目,MFC1是新建的项目。
在这里插入图片描述

3、拷贝MFC界面

  点击vs菜单栏的“视图”->“其他窗口”->“资源视图”,打开资源视图。
在这里插入图片描述
  在资源视图里面,复制已有项目MFC的界面文件“IDD_MFC_DIALOG”至新建项目MFC1的对应目录。
在这里插入图片描述
  删除MFC1项目中的界面文件“IDD_MFC1_DIALOG”,在属性窗口更改“IDD_MFC_DIALOG”的文件名为“IDD_MFC1_DIALOG”
在这里插入图片描述
  此时新的界面便做好了。
在这里插入图片描述

4、新建相关文件

  新建运行如上界面所需的*.h和*.cpp文件。在MFC1项目中,缺少运行所需的function.h和function.cpp。故新建这两个文件。
在这里插入图片描述
  分别在“头文件”和“源文件”右键点击选择“添加”->“新建项”,分别添加function.h和function.cpp,最后将MFC项目中function.h和function.cpp的代码复制到新建项目MFC1中的function.h和function.cpp。
在这里插入图片描述
在这里插入图片描述
  注意:不要直接从MFC项目中复制function.h和function.cpp文件到MFC1项目中去,因为复制粘贴相当于只是建了1个指向原文件的指针,如下图所示,粘贴后打开function.h,其地址依旧是MFC项目中的地址,而不是在MFC1项目中创建一个同名文件,这与界面文件的复制粘贴是不一样的。
在这里插入图片描述

5、修改相关代码

  根据vs的错误提示修改相关文件的代码,重点修改MFC1Glg.cpp文件,这需要根据具体代码而定,若代码写的比较整齐和集中,那修改起来就比较简单。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34801642/article/details/87619672