社区
界面
帖子详情
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中实现那些函数会调用
...全文
405
15
打赏
收藏
Release 版本下 报debug assertion failed错误
1、dll的编译环境为release模式,但运行期会有debug assertion failed错误,是release模式为配置好?若是则该如何修改配置 2、debug assertion failed报的错误为wingdi.cpp 文件中 1114行断言失败,该断言为MFC中实现那些函数会调用
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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
1. **阻塞模式套接字**:在阻塞模式下,调用套接字函数时,如果数据未准备好或操作未完成,函数将暂停执行,直到操作完成。这对于简单的同步通信来说是直观且易于管理的。 2. **套接字API的使用**:如`socket()`、`...
使用MFC编写的贪吃蛇小游戏
Visual Studio 2017平台上编写的MFC基于对话框的...程序在
Debug
模式下编译会出现断言失败(
Debug
Assertion
Failed
),但可忽略,忽略后程序依旧能运行且实现既定功能;程序在
Release
模式下编译能正常运行且无误。
MAPGIS二次开发一些常见问题汇总.docx
10. **工具箱关闭和打开的
错误
**:在开发环境中遇到的“
Debug
Assertion
Failed
!”
错误
通常在发布
版本
中不会再现。确保VC++的
版本
是最新的,或者考虑在发布模式下运行程序。 11. **动态链接库缺失问题**:如果你的...
vs2010+opencv安装方式
- **OpenCV Error:
Assertion
failed
(size.width > 0 && size.height > 0) in cv::imshow**: - 确保图片路径正确无误,特别是要注意路径分隔符的使用(例如使用双斜杠`\\`)。 #### 四、总结 通过以上步骤,你...
win7+vs2010+opencv3.0.0+安装
2. **OpenCV Error:
Assertion
failed
(size.width>0 && size.height>0) in cv::imshow**: - 这个
错误
提示通常是因为图像路径不正确或者文件不存在。 - 确认图像路径正确无误,例如: ```cpp cv::Mat image = ...
界面
15,981
社区成员
115,868
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章