社区
界面
帖子详情
Release 版本下 报debug assertion failed错误
wgggkgd
2012-09-05 09:45:15
1、dll的编译环境为release模式,但运行期会有debug assertion failed错误,是release模式为配置好?若是则该如何修改配置
2、debug assertion failed报的错误为wingdi.cpp 文件中 1114行断言失败,该断言为MFC中实现那些函数会调用
...全文
412
15
打赏
收藏
Release 版本下 报debug assertion failed错误
1、dll的编译环境为release模式,但运行期会有debug assertion failed错误,是release模式为配置好?若是则该如何修改配置 2、debug assertion failed报的错误为wingdi.cpp 文件中 1114行断言失败,该断言为MFC中实现那些函数会调用
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
向立天
2013-03-18
打赏
举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了
疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面
界面版关于版主结帖工作的具体办法
wgggkgd
2012-09-05
打赏
举报
回复
[Quote=引用 10 楼 的回复:]
那就是断言失败,把这句删了,换成if处理
[/Quote]
这个我能随便改?
wgggkgd
2012-09-05
打赏
举报
回复
这个就不知道了,我们是在第三方框架上进行开发的
有判断dll、exe是debug还是release发布的方法么
franzhong
2012-09-05
打赏
举报
回复
那就是断言失败,把这句删了,换成if处理
快乐鹦鹉
2012-09-05
打赏
举报
回复
那是否还有其它动态库之类的是debug版本?
wgggkgd
2012-09-05
打赏
举报
回复
Release模式,
报的错误确实为wingdi.cpp 文件中 1114行
快乐鹦鹉
2012-09-05
打赏
举报
回复
应该不是这个动态库报的错吧。你动态库所在的运行环境是debug的?
wgggkgd
2012-09-05
打赏
举报
回复
项目太大,现在还没有必现该问题的方法
只能重新检查有可能使用页面的析构了
该断言失败如下
CGdiObject* PASCAL CGdiObject::FromHandle(HGDIOBJ h)
{
CHandleMap* pMap = afxMapHGDIOBJ(TRUE); //create map if not exist
ASSERT(pMap != NULL);
CGdiObject* pObject = (CGdiObject*)pMap->FromHandle(h);
ASSERT(pObject == NULL || pObject->m_hObject == h); //这里为1114行
return pObject;
}
看不见的裂痕
2012-09-05
打赏
举报
回复
碰到过2次这种情况,都是指针没管理好(重复释放,有些控件会自动帮你释放new的指针内存),奇怪的是DEBUG竟然运行正常。
解决方法:
1.检查页面析构的地方
2.用Release版本调试,把代码优化去掉,把内容输出勾上
excelle_ICT
2012-09-05
打赏
举报
回复
这种情况,通常不是当前调试模块中产生的。
很可能是调试的程序中,包含了很多DLL,以及外部控件。其中有部分是采用debug模式编译的。又很不幸的,刚好到了错误的地方。
一般来说,release模块的调试,所有的模块也应该都是release,否则会有意想不到的错误。
到了错误的地方,可以点重试,看看call stack,找到最上面不是系统DLL的模块,估计就是那儿错了。
wgggkgd
2012-09-05
打赏
举报
回复
代码太多了,完全没有办法贴的
Eleven
2012-09-05
打赏
举报
回复
把你的代码贴出来看看~
Eleven
2012-09-05
打赏
举报
回复
你Debug下call stack,看函数调用堆栈,找到出错的函数先~
wgggkgd
2012-09-05
打赏
举报
回复
[Quote=引用 13 楼 的回复:]
你那行代码发上来看看。之前有猛人直接把源码修改的。呵呵
[/Quote]
概率复现,所以不能确定在我的代码中何处
wingdi.cpp 1114行如下
该断言失败如下
CGdiObject* PASCAL CGdiObject::FromHandle(HGDIOBJ h)
{
CHandleMap* pMap = afxMapHGDIOBJ(TRUE); //create map if not exist
ASSERT(pMap != NULL);
CGdiObject* pObject = (CGdiObject*)pMap->FromHandle(h);
ASSERT(pObject == NULL || pObject->m_hObject == h); //这里为1114行
return pObject;
}
看不见的裂痕
2012-09-05
打赏
举报
回复
你那行代码发上来看看。之前有猛人直接把源码修改的。呵呵
ocx.rar_ATL_BLOCKINGSOCKET.CPP_atl ocx_atl tcp_ocx
演示用ATL编写的基于线程的TCP/IP通信控件
使用MFC编写的贪吃蛇小游戏
Visual Studio 2017平台上编写的MFC基于对话框的贪吃蛇小游戏,能满足基本的功能、并有难度等级可选,简洁易懂,适合初学者上手。 程序在
Debug
模式下编译会出现断言失败(
Debug
Assertion
Failed
),但可忽略,忽略后程序依旧能运行且实现既定功能;程序在
Release
模式下编译能正常运行且无误。
MAPGIS二次开发一些常见问题汇总.docx
。。。
vs2010+opencv安装方式
在win7系统下,vs2010+opencv配置、库加载调用等详细的方法说明文档
win7+vs2010+opencv3.0.0+安装
win7,vs2010下怎么配置opencv3.0库,并能正确输出图片实例。其中,也例出了一些在配置过程中出现的问题。
界面
15,980
社区成员
115,867
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章