ASSERT(ContinueModal());的时候报Debug Assertion Fail
来源:互联网 发布:机器语言编程 编辑:程序博客网 时间:2024/05/22 08:06
一个MFC的程序,类似资源
结果修改后,出现在wincore.cpp的3487行中出现assert错误
调试之后,跳到这里:
ASSERT(ContinueModal());
Call Stack的情况是:
CWnd::RunModalLoop(unsigned long 4) line 3486 + 34 bytes
CDialog::DoModal() line 539 + 12 bytes
……
……
有没有遇到类似情况的
麻烦告诉我一下可能的原因
thanks
问题点数:100、回复次数:9Top
1 楼aceouter(outer)回复于 2006-03-08 15:32:27 得分 10
代码贴出来看看Top
2 楼gold_water(风雨无阻)回复于 2006-03-08 16:23:56 得分 5
可能是溢出了.建议再仔细检查一下代码Top
3 楼gold_water(风雨无阻)回复于 2006-03-08 16:26:13 得分 0
可能是溢出了.建议再仔细检查一下代码Top
4 楼syy64(太平洋)回复于 2006-03-08 16:44:44 得分 5
调试看看,从你的
5 楼lumber(今天的祝福 明天的孤独)回复于 2006-03-08 17:26:00 得分 0
CDialog::DoModal() 之后,开启了一个线程做了一些操作,也没有什么特别的操作Top
6 楼lumber(今天的祝福 明天的孤独)回复于 2006-03-08 17:33:51 得分 0
CLinkDlg继承CDialog,下面是代码
DWORD WINAPI LinkThread(LPVOID lpParameter)
{
//这个线程做了点事情,
SendMessage(((CLinkDlg*)lpParameter)->GetSafeHwnd(), LINKOK, 0, NULL);
}
CLinkDlg::CLinkDlg(CWnd* pParent /*=NULL*/) : CDialog(CLinkDlg::IDD, pParent)
{
//初始化
}
BOOL CLinkDlg::OnInitDialog()
{
//创建了个线程
::CreateThread(NULL, 0, LinkThread, (LPVOID)this, 0, &m_dwThreadID);
}
void CLinkDlg::OnLinkOK(WPARAM wParam,LPARAM lParam)
{
//收到了LINK_OK的消息后到了这里
CDialog::OnOK();
}
void CLinkDlg::OnCancel()
{
//取消那个线程
CDialog::OnCancel();
}
Top
7 楼newcore(to be or not to be, it's a question.)回复于 2006-03-08 18:19:14 得分 40
感觉是线程启动后,就发送一个消息给对话框,然后对话框由于某种原因被非法关闭。(
个人觉得,这里对话框的生命周期和线程中止时机最好有个
Top
8 楼DentistryDoctor(不在无聊中无奈,就在沉默中变态)回复于 2006-03-08 18:39:20 得分 40
SendMessage
=>
PostMessageTop
9 楼lumber(今天的祝福 明天的孤独)回复于 2006-03-13 09:26:38 得分 0
SendMessage 改成 PostMessage 就可以了,不会在出现那个assert
多谢各位
- ASSERT(ContinueModal());的时候报Debug Assertion Fail
- VS2010 MFC的小Bug-ASSERT(ContinueModal());
- 切换视时基于FormView的对话框属性设置与ASSERT报错的问题 (Debug Assertion Failed!)
- 切换视时基于FormView的对话框属性设置与ASSERT报错的问题 (Debug Assertion Failed!)
- 断言错误:ASSERT(ContinueModal())
- Debug assertion failed! ASSERT(FALSE) VC
- vc出现Debug Assertion Failed时候的处理方法
- Debug Assertion Failed!断言报错的解决
- ] *** Assertion failure in -[AFHTTPRequestSerializer 今天用AF的时候遇到了报这个错误
- 解决debug时AfxGetInstanceHandle()报debug Assert Failed错误
- java assert的使用并深入解析Java的assertion
- Debug Assertion Failed
- debug assertion failed
- Debug Assertion failure错误
- Debug Assertion Failed解决方法! !!
- Debug Assertion Failed!
- Debug Assertion Failed!
- debug assertion failed
- |Image$$RO$$Limit| 的含义
- 搜索引擎优化之长尾关键词理论及实战
- sam 修改shmmax参数
- 新接触的一种GUI--Tilcon
- C#开发和使用中的23个技巧
- ASSERT(ContinueModal());的时候报Debug Assertion Fail
- 使用ping命令检查路由之解惑
- 非聚集索引,聚集索引
- 寡头与品牌
- 一次异常内存消耗问题的诊断及解决与热点块 (联接地址)
- 思科OSPF技术要点实践总结
- 深入理解.net的事件与委托机制
- 生成树协议学习要点全记录
- Java 5.0多线程编程