ATL窗口派生问题
有一个类从CAxWindow派生,作为一个Frame窗口的子窗口:
class CNoteBookView : public CWindowImpl<CNoteBookView, CAxWindow>,
public IDispEventSimpleImpl<1, CNoteBookView, &DIID_DWebBrowserEvents2>
{
......
BEGIN_SINK_MAP(CNoteBookView)
SINK_ENTRY_INFO(1, DIID_DWebBrowserEvents2, DISPID_DOCUMENTCOMPLETE, OnDocumentComplete, &infFunc1)
END_SINK_MAP()
HWND Create(HWND hWndParent, ...);
......
}
在Create函数中调用DispEventAdvise挂接DWebBrowserEvents2事件,但不知在哪里调用DispEventUnadvise合适,在WM_DESTROY时,内部的IWebBrowser2控件已经被销毁了,而WM_CLOSE消息根本接收不到