描述:
我用ATL开发了按钮控件,用ATL自己生成的htm在IE中运行。点击按钮后会弹出一下的debug错误信息框
Debug Assertion Failed!
Program:C:\Program Files\Internet Explorer\iexplore.exe
Files:c:\promram files\microsoft visual
studio\vc98\atl\include\atlwin.h
Line:608
Expression: ::IsWindow(m_hWnd)
For information on how your program can cause an assertion failure,see
the Visual C++ documentation on asserts.
我估计是焦点问题,但不知道如何解决,请各位高手指教.我的创建按钮代码为:
RECT rc1;
rc1.left = 0;
rc1.top = 0;
rc1.bottom = rc1.top + 18;
rc1.right = rc1.left + 70;
m_btnConnect.Create(m_hWnd,&rc1,_T("Connect"),WS_CHILD | WS_VISIBLE,0,IDC_BTN_CONNECT);
非常感谢!!
解决方案1:
从错误看,应该是你的窗口还没有建立,你就调用了某些窗口操作.
你在测试容器里面测试运行过吗???如果侧过的话,在你的control建立的时候检查一下父窗口的有效性.