您的位置:首页 > Web前端 > HTML

解决使用CHtmlView后出现的COleException异常

2010-06-08 11:14 288 查看
程序中在使用CHtmlView类来实现浏览器功能时,在调整窗口大小时会窗口输出异常警告,例如我的出现的警告如下:

Warning: constructing COleException, scode = DISP_E_MEMBERNOTFOUND ($80020003).
htmltest.exe 中的 0x7c80bef7 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012de68 处的 COleException。
Warning: constructing COleException, scode = DISP_E_MEMBERNOTFOUND ($80020003).
htmltest.exe 中的 0x7c80bef7 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012de68 处的 COleException。
这是CHtmlView在处理WM_SIZE消息时造成的,改写WM_SIZE消息后就可以解决此问题,如下:

void CMyLogShView::OnSize(UINT nType, int cx, int cy)
{
CFormView::OnSize(nType, cx, cy); //注意此处一定要是CFormView
// TODO: 在此处添加消息处理程序代码
if (::IsWindow(m_wndBrowser.m_hWnd))
{
CRect rect;
GetClientRect(rect);
::AdjustWindowRectEx(rect, GetStyle(), FALSE, WS_EX_CLIENTEDGE);
m_wndBrowser.SetWindowPos(NULL,
rect.left,
rect.top,
rect.Width(),
rect.Height(),
SWP_NOACTIVATE | SWP_NOZORDER);
}
}

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wandy_king/archive/2009/05/23/4210200.aspx

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐