Как получить HTML-код от класса CHtmlView?
От: Andi Россия http://cyborg.city.tomsk.net
Дата: 20.03.03 06:33
Оценка:
Добрый день!
При разработки Web-клиента (используеться CHtmlView) возникла необходимость анализирование HTML-кода загруженной страницы. У класса CHtmlView есть метод LPDISPATCH GetHtmlDocument( ) const; Насколько стало известно это указатель на интерфейс IDispatch (насколько мне известно это уже COM технология с которой у меня туговато) активного документа... Вообщем хватит воды, теперь суть вопроса... Основная цель это получить HTML-код, а вот как?
Очень прошу помочь разобраться... кто чем сможет... Желательно исходники и коментарии к ним. Убедительная просьба писать на
Заранее благодарен. Андрей.
Re: Как получить HTML-код от класса CHtmlView?
От: aboo Россия  
Дата: 20.03.03 10:47
Оценка:
Здравствуйте, Andi, Вы писали:

...

Пример на API устроит?
... << RSDN@Home 1.0 beta 6a >>
Re: Как получить HTML-код от класса CHtmlView?
От: Grey-  
Дата: 03.04.04 11:25
Оценка:
Здравствуйте, Andi, Вы писали:

A>Добрый день!

A>При разработки Web-клиента (используеться CHtmlView) возникла необходимость анализирование HTML-кода загруженной страницы. У класса CHtmlView есть метод LPDISPATCH GetHtmlDocument( ) const; Насколько стало известно это указатель на интерфейс IDispatch (насколько мне известно это уже COM технология с которой у меня туговато) активного документа... Вообщем хватит воды, теперь суть вопроса... Основная цель это получить HTML-код, а вот как?
A>Очень прошу помочь разобраться... кто чем сможет... Желательно исходники и коментарии к ним. Убедительная просьба писать на
A>Заранее благодарен. Андрей.


void CTestHTMLView::BodyToStr(void)
{
  CString ret_str;

    IHTMLDocument2 *lpHtmlDocument = NULL;
    LPDISPATCH lpDispatch = NULL;
    lpDispatch = GetHtmlDocument();
    ASSERT(lpDispatch);

    lpDispatch->QueryInterface(IID_IHTMLDocument2, 
                                (void**)&lpHtmlDocument);
    ASSERT(lpHtmlDocument);

    lpDispatch->Release();

    IHTMLElement *lpElem;
    CComBSTR bodyTxt;
    
    lpHtmlDocument->get_body(&lpElem);
    ASSERT(lpElem);
    lpElem->get_outerHTML(&bodyTxt);
    lpHtmlDocument->Release();

    m_szbody = bodyTxt.m_str;
    lpElem->Release();    
}


Самый тупой способ
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.