您的位置:首页 > 编程语言 > C语言/C++

File: f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\winocc.cpp错误

2016-03-20 01:00 686 查看
错误提示:

---------------------------

Microsoft Visual C++ Runtime Library

---------------------------

Debug Assertion Failed!

Program: ...ram Files (x86)\VC¹¤³Ì\ÎäÁÖÍ⴫С¸¨Öú\WGDll\Release\WGDll.dll

File: f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\winctrl3.cpp

Line: 209

For information on how your program can cause an assertion

failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)

---------------------------

中止(A)   重试(R)   忽略(I)   

---------------------------

描述:

MFC程序中      自己添加了个CCheckListBox控件
使用了默认属性   当调用AddString方法时出现以上错误

CCheckListBox
m_clb_Mon;

m_clb_Mon.AddString(_T("111"));

解决方法:

修改CCheckListBox控件属性
HasString  改成 TRUE

Owner Draw 改成
Fixed

类似的错误参考:http://ask.csdn.net/questions/24413

Debug Assertion Failed! 在winctrl3.cpp Line:525.求给解决意见,在线等

winctr13 cppc++mfc

错误如图:

出错代码如下:

void CCheckListBox::PreSubclassWindow()

{

CListBox::PreSubclassWindow();

// CCheckListBoxes must be owner drawn

 **ASSERT(GetStyle() & (LBS_OWNERDRAWFIXED |     LBS_OWNERDRAWVARIABLE));**                ->出错代码行525

}

解决了,按出错代码ASSERT(GetStyle() & (LBS_OWNERDRAWFIXED | LBS_OWNERDRAWVARIABLE));可知是控件类CCheckListBox对象的问题,检查了自己的控件发现在LISTBOX控件中行为中'Has Strings'必须设置TRUE,且"Owner Draw"必须设置Fixed.之前设置的分别是FALSE和NO,唉,总算解决了,昨天困惑了一晚上,以前碰到这种

Debug Assertion Failed!感觉无从下手,现在发现也没什么,定位发生ASSERT的代码,就可以知道是哪里出错了,呵呵,以后不会对这种错误畏惧了.哦,还有这个"f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\winctrl3.cpp"不是真实文件位置,是个符号文件,可以在VS2008安装文件中查找正确文件.嗯,说到这吧.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: