While implementing a show/hide toggle with a button for MFC’s IWebBrowser2 (class CWebBrowser2), I kept hitting this problem:
Say the browser control variable is m_browserCtrl.
m_browserCtrl.ShowWindow(SW_HIDE);
m_browserCtrl.ShowWindow(SW_SHOW);
It wasn’t freed from memory or anything, but this just doesn’t work.
You have to do it like this instead:
::ShowWindow((HWND)(m_browserCtrl.GetSafeHwnd()),SW_HIDE);
::ShowWindow((HWND)(m_browserCtrl.GetSafeHwnd()),SW_SHOW);