Re[9]: Размеры IHTMLWindow2
От: Flamer Кипр http://users.livejournal.com/_flamer_/
Дата: 08.10.07 20:33
Оценка:
Здравствуйте, Aniskin, Вы писали:

[]

A>Честно говоря, я не понимаю вышенаписнного. Я никогда ранее не работал с интерфейсами Explorer`а, и для меня это темный лес.

A>Все что у меня есть — это хендл окна и полученные IHTMLDocument2 и IHTMLWindow2. Мне нужно из этого как-нибуть получить IWebBroser. Прямого пути нет?

1. Запрашиваете у IHTMLWindow2 интерфейс IServiceProvider c помощью QueryInterface
2. У полученного IServiceProvider запрашиваете интерфейс IWebBrowser2 с помощью QueryService.

Примерно так:

IServiceProvider* pService;
HRESULT hr = pWindow->QueryInterface(IID_IServiceProvider,(void**)&pService);
if(SUCCEEDED(hr))
{
    IWebBrowser2* pBrowser;
    hr = pService->QueryService(SID_SWebBrowserApp, IID_IWebBrowser2,(void**)&pBrowser);
    
    if(SUCCEEDED(hr))
    {
        // получили IWebBrowser2 в pBrowser
    } // if

} // if
<< Деньги не приносят счастья, но вот то, что на них можно купить…. >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.