MFC/C++学习系列之简单记录1——错误解决与Dialog移植

MFC/C++学习系列之简单记录1

  • 前言
  • MFC application已停止工作
  • Dialog移植
  • MFC中的去边框设置
  • 总结

前言

最近接触MFC,接手一个项目,基于MFC架构编写的,在跑通代码的过程中出现的问题进行简单记录。


MFC application已停止工作

在代码移植过程中,直接build代码,提示MFC application已停止工作。使用Debug进行单步运行,在运行某个指针指向的时候,突然报错,会提示access violation

从其他角度查资料,发现其实可能是指针未指向使用的存储区。在Debug的过程中,我发现xx->yy,其中yy这个定义其实是空指针,再仔细查看,没有定义yy这个指针。

当把yy这个指针定义后,问题就决解了。

这个问题其实主要原因是在没有了解源码的过程中,直接运行程序。然后解决很明显的错误后。才意识到,项目负责人给的两个程序的同一个类在调用过程中的不同命名问题导致。

tips:

软件文档的重要性:在一些地方需要备注。

不同人的开发编程不同,需要有一定的开发规则设置。

Dialog移植

在接收一个项目时,给我又丢了一个活。直接移植MFC的两个界面到另一个项目中。但是我不熟悉MFC的使用。通过摸索,建议使用.ogx。这个可能只有VC6.0才能使用。

  • 第一步:生成.ogx文件。

    在需要移植的项目界面中,右击选择dialog相关联的类,选择Add to Gallery

  • 第二步:添加.ogx文件。

    工程------添加工程------components。这里一般路径会默认与生成.ogx的路径一致。选择对应的.ogx会直接插入。插入的内容包含Dialog和对应的类。

MFC中的去边框设置

在没有使用.ogx时,MFC的界面不像C#中的界面移植,直接复制代码。准备建立新的Dialog,在建立新的Dialog后,需要考虑去边框的设置。

  • 第一方面:对话框样式设置。边框选择None。
  • 第二方面:对话框样式。因为当去边框需要嵌入别的对话框时,需要额外再设置样式。在别的Dialog中使用该界面需要设置为child属性,否则无法加载出该界面。

总结

最近遇到MFC的问题解决记录!

相关推荐
鸿芯微控科技3 天前
MFC通信数据跳变怎么排查?RS485接线、丢帧与流量反馈验证
python·mfc·rs485·质量流量控制器·通信异常
鸿芯微控科技6 天前
MFC模拟量信号异常怎么排查?0-5V、4-20mA接线与量程换算
c++·5g·mfc·故障排查·质量流量控制器·4-20ma·模拟量信号
神仙别闹6 天前
基于C++ MFC实现动态分区分配存储管理
开发语言·c++·mfc
鸿芯微控科技8 天前
MFC设定流量达不到怎么办?上游供气能力、压差与管路阻力排查
c++·mfc·质量流量控制器·流量不足排查·压差测试·气体流量控制
兵哥工控8 天前
mfc实现在数值范围内实时改变静态文本控件字体颜色实例
c++·mfc
鸿芯微控科技11 天前
MFC关断后还有流量怎么办?零流量、阀门泄漏、压差与Python分析
c++·python·mfc·质量流量控制器·关断泄漏·零流量测试
鸿芯微控科技12 天前
MFC量程怎么选?最小流量、满量程、调节比与误差计算
c++·python·mfc·流量控制·设备选型·质量流量控制器
TunerT_TQ20 天前
Valhalla 静态工程审阅 #021|华为MindSpore 源码证据驱动评测【大厂开源基础设施特辑】
c++·开源·github·mfc·#大模型开源·#华为开源·#深度学习
蒙奇·D·路飞-21 天前
OpenClaw:开源的《合金弹头》精神续作与终极本地部署指南
c++·开源·mfc
TunerT_TQ21 天前
Valhalla 静态工程审阅 #018|MMCV 源码证据驱动评测【大厂开源基础设施特辑】
c++·开源·mfc·#计算机视觉·#商汤科技·#openmmlab·#静态源码审计