...
OleInitialize(NULL);
CContainer* m_pContainer = new CContainer;
m_pContainer->setParent(hWndBrowser1);
m_pContainer->add(L"Shell.Explorer");
m_pContainer->setVisible(TRUE);
m_pContainer->setFocus(TRUE);
IUnknown *pUnknown = m_pContainer->getUnknown();
if(pUnknown)
{
IWebBrowser2 *pWeb;
pUnknown->QueryInterface(IID_IWebBrowser2, (void**)&pWeb);
pUnknown->Release();
HRESULT res;
HWND pWebhWnd = NULL;
res = pWeb->get_HWND((long *)&pWebhWnd);
if(SUCCEEDED(res))
{
log("hwnd: " + IntToStr((long)pWebhWnd) + "\n");
}
else
{
log("hwnd failed\n");
}
...
Как получить hwnd флэш-ролика?
Есть написанный на WinApi IWebBrowser2 контрол. В нём открыта страница с флэш роликом. Как получить hwnd этого ролика?
а у него разве есть hwnd?
Вопрос параллельный. Вот есть код.
Код:
Здесь создаётся контейнер с браузером, загрузка страницы в него идёт хорошо. Но get_HWND не хочет возвращать hwnd :( в логе вижу, что failed. Как быть?
Сдается, что надо его искать в браузере как объект DOM, а затем работать через апи FlashPlayer-а.
Есть подозрения почему ни get_Busy ни get_HWND не работают у IWebBrowser2?