void CDlgWebPopup::DocumentCompleteExplorer1(LPDISPATCH pDisp, VARIANT* URL) { IUnknown* pUnk; LPDISPATCH lpWBDisp; pUnk = m_cWebBrowser.GetControlUnknown(); pUnk->QueryInterface(IID_IDispatch, (void**)&lpWBDisp); if(pDisp == lpWBDisp) { // 마지막 이벤트 } lpWBDisp->Release(); } |
보통의 웹페이지는 프레임을 포함하고 있기 때문에 페이지 로딩시 DocumentComplete가 여러 번 호출됩니다.
DocumentComplete 이벤트는 최상위의 웹브라우저 윈도우에 대해 마지막으로 호출됩니다.
IWebBrowser를 이용한다면 위와 같은 방법으로 DocumentComplete의 마지막 호출을 판단할 수 있습니다.
또는 LPDISPATCH pDisp 파라미트를 IWebBrowser2로 인터페이싱하요 TopLevelContainer 프로퍼티로도 판단이 가능합니다.
'C / C++ / Win32 / MFC' 카테고리의 다른 글
Excel 파일을 SQLite로 변환 (0) | 2009.05.20 |
---|---|
미니덤프를 이용하여 디버깅하기 (0) | 2009.04.22 |
비스타에서 Visual Studio 2003의 Find in Files 기능 사용하기 (0) | 2009.04.20 |
왜 C/C++인가? (2) | 2009.04.20 |
프로젝트 폴더 구조 (0) | 2009.04.20 |