IWebBrowser2* pIWeb =
IServiceProvider* pServiceProvider = NULL;
if (SUCCEEDED(pIWeb->QueryInterface(
IID_IServiceProvider,
(void**)&pServiceProvider)))
{
IOleWindow* pWindow = NULL;
if (SUCCEEDED(pServiceProvider->QueryService(
SID_SShellBrowser,
IID_IOleWindow,
(void**)&pWindow)))
{
HWND hwndBrowser = NULL;
if (SUCCEEDED(pWindow->GetWindow(&hwndBrowser)))
{
// hwndBrowser is the handle of TabWindowClass
HWND hwnd = NULL;
hwnd = ::FindWindowEx(hwndBrowser,NULL,TEXT("Shell DocObject View"),NULL);
if (hwnd)
{
hIE = ::FindWindowEx(hwnd,NULL,TEXT("Internet Explorer_Server"),NULL);
}
}
pWindow->Release();
}
pServiceProvider->Release();
}