오후 8:56 2002-11-14
조경민 bro@shinbiro.com
웹브라우저컨트롤 ShowWindow(SW_HIDE)시 뻑나는 버그
===========================================================

이렇게 해야 함.
::ShowWindow( m_Control.GetSafeHwnd(), SW_HIDE );



BUG: WebBrowser Control Destroyed When Hidden
The information in this article applies to:
Microsoft Internet Explorer (Programming) 4.0
Microsoft Internet Explorer (Programming) 4.01
Microsoft Internet Explorer (Programming) 5
Microsoft Internet Explorer (Programming) 5.01
Microsoft Internet Explorer (Programming) 5.01 SP1
Microsoft Internet Explorer (Programming) 5.5
The Microsoft Foundation Classes (MFC)
Microsoft Internet Client SDK 4.0
Microsoft Internet Client SDK 4.01

This article was previously published under Q182111
SYMPTOMS
The Microsoft WebBrowser control is used in a Microsoft Foundation Class (MFC) application and, following the dynamic creation of the control or call to ShowWindow(SW_HIDE), results in the control's methods not functioning or a debug assertion in Winocc.cpp.
CAUSE
If the WebBrowser control is created dynamically without specifying the WS_VISIBLE window style, or if the control's ShowWindow(SW_HIDE) method is called, this results in a call to the control's IOleControl::DoVerb() method with the OLEVERB_HIDE verb. This in turn causes the instance of Internet Explorer to be destroyed, preventing further access to the control's methods, or if built with a debug configuration, the application asserts when CWnd methods are called for the control.
RESOLUTION
Specify the WS_VISIBLE window style when dynamically creating a WebBrowser control and do not call the control's ShowWindow(SW_HIDE) method.
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
MORE INFORMATION
If you need to hide the WebBrowser control, call the Windows SDK ShowWindow() API directly.

Use the following code to hide the control:
::ShowWindow( m_Control.GetSafeHwnd(), SW_HIDE );
                                Use the following code to show the control:
::ShowWindow( m_Control.GetSafeHwnd(), SW_SHOW );
                                Last Reviewed: 10/16/2002
Keywords: kbBug kbDSupport KB182111

+ Recent posts