社区
C++ 语言
帖子详情
MFC中关闭一个Dialog程序崩溃
hdk_1992
2013-03-14 09:33:31
我在一个Dialog中,给一个编辑框加一个变量对应,然后关闭对话话框后程序就崩溃了,是什么原因呢?该怎么解决?
...全文
220
8
打赏
收藏
MFC中关闭一个Dialog程序崩溃
我在一个Dialog中,给一个编辑框加一个变量对应,然后关闭对话话框后程序就崩溃了,是什么原因呢?该怎么解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2013-03-15
打赏
举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。 判断是否越界访问,可以在数组的最后一个元素之后对应的地址处设置数据读写断点。如果该地址对应其它变量干扰判断,可将数组多声明一个元素,并设置数据读写断点在该多出元素对应的地址上。
小字
2013-03-14
打赏
举报
回复
你看一下打开Dialog是用的什么方式,如果是new的,那么是不是在关闭时没有delete呢?我遇到过不少次了。 我常用的打开dialog的方式: TFMain *MainForm = new TFMain(this); MainForm->ShowModal(); delete MainForm; 也可以将MainForm 声明为成员变量,在你要打开窗体的地方用前两句,在最后程序关闭时(类似析构函数)用 if ( MainForm ) { delete MainForm; }
一入程序深似海
2013-03-14
打赏
举报
回复
可能是某个对象被 delete 了多次。 MFC跑飞了,一般都是某个句柄的指向是NULL
starytx
2013-03-14
打赏
举报
回复
根据你说的无法得出结论,F5调试跟踪一下,看看在哪块崩溃的
江湖小虾米东方未明
2013-03-14
打赏
举报
回复
对话框的wm_close消息有没有写事件,断点调试下~
tonforce
2013-03-14
打赏
举报
回复
这个不好判断,很多原因会导致程序崩掉 跟踪下,看看在哪儿崩的?
derekrose
2013-03-14
打赏
举报
回复
设断点调试。
lfm13720
2013-03-14
打赏
举报
回复
是断言失败吧,应该很容易找到原因。
MFC
中
C
Dialog
关闭
取消时
程序
会
崩溃
的原因
背景:在
一个
左树右表的框架里对左树的右键添加了响应事件,可以弹出
一个
添加的窗口。关于这个C
Dialog
的
关闭
崩溃
进行了各种调整。 现象是无论是点击取消还是点击红叉,结果都是
崩溃
。 最后一步步debug发现,问题不在OnCancel函数
中
,而是在DoModal函数
中
,这个函数我在调用了父类C
dialog
函数的domodal()之后 添加了一句update(true); 因为
关闭
窗口之后 系统会
mfc
异常
崩溃
处理
本文将完成
一个
监控和处理
mfc
程序
异常
崩溃
后自动重启的实例,同时建议所有异常都应查找原因(例如内存溢出、野指针操作等等,他们在编译时都无法发现),本着人性化的处理流程,你也需要
一个
对异常
崩溃
的处理工作。以下是详细步骤: 1.新建
一个
基于对话框的
dialog
(本例test.exe) 1.1 在testDlg.cpp
中
添加
一个
我们自定义的回调函数,用来处理
mfc
程序
的异常
崩溃
: // Cte
mfc
对话框显示和
关闭
,
程序
崩溃
,弹出
中
止,重试,忽略的问题
在
mfc
中
一般弹出
中
止,重试,忽略的框,问题所在就是内存出了问题,这我们都知道,但是如何定位到内存泄露的地方,这才是我们关心的。我们根据出问题的地方进行修改。所以说下我所遇到的问题解决过程。 1,对话框显示,弹出
中
止,重试,忽略,问题所在就是控件的问题。你可以在函数DoDataExchange,这个函数自动生成的,是变量和控件关联的都在这个函数里边。按f9,将断点设在函数的开始问题,按f10一步
MFC
窗体
关闭
那点事
转载请注明出处
作者:小马
网上没见到几个说得比较清楚的,自己发表一些看法, 讲几个相关的知识点. 以备日后脑子不好使了, 可以找来
温习一下.
当我们用创建
一个
新的对话框时, 上面会有两个按钮, 他们的ID是IDOK和IDCANCEL,这两个ID是
MFC
的保留ID,任何按钮,不管它叫什么名字, 只有他们的ID是这两个, 如果你不重载他们(在资源视图双击后,添加自己的代码), 点一下的效果都是
关闭
窗体.
【
MFC
】DestroyWindow()函数导致
程序
崩溃
环境 VS版本:VS2010 问题 最近的项目碰到
一个
需求:需要在后台线程
中
销毁已经创建好的窗体。 这个需求实现产生过程
中
产生
一个
莫名其妙的异常,最终导致
程序
崩溃
(应用
程序
消失了,未报任何错误)。 使用Debug调试
程序
时,
中
断在这里。查看
程序
调用堆栈,也找不到可以跟踪的代码。 原因 排除各种干扰因素后,在网上找到产生问题的原因:
程序
崩溃
是由DestroyWindow...
C++ 语言
64,648
社区成员
250,503
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章