Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

Проверка откр. / закр. тага в таблицах HTML...   Найти похожие ветки 

 
Razorblade   (2003-09-08 09:18) [0]

Народ! Если кто нибуди писал нечто подобное или (даже желательно)
сторил дерево тагов HTML документа в TreeView. Отзовитесть! Плз.
Критично по времени!


 
nikkie ©   (2003-09-08 10:32) [1]

MSHTML
создаешь HTML document с помощью CoCreateInstance, инициализируешь через IPersistStreamInit, загружаешь в него данные через IHTMLElement::put_innerHTML. код на c++:
HRESULT hr = CoCreateInstance(CLSID_HTMLDocument, NULL,
CLSCTX_INPROC_SERVER, IID_IHTMLDocument2, (void **)&spHTMLDocument);
_ASSERT(SUCCEEDED(hr));

CComPtr<IPersistStreamInit> spPSI;
hr = spHTMLDocument->QueryInterface(IID_IPersistStreamInit, (void**)&spPSI);
_ASSERT(SUCCEEDED(hr));
hr = spPSI->InitNew();
_ASSERT(SUCCEEDED(hr));
spPSI = NULL;

CComPtr<IHTMLElement> spHTMLElement;
hr = spHTMLDocument->get_body(&spHTMLElement);
_ASSERT(SUCCEEDED(hr));

hr = spHTMLElement->put_innerHTML(HTML);
_ASSERT(SUCCEEDED(hr));

далее делаешь рекурсивный перебор детей у IHTMLElement


 
Razorblade   (2003-09-08 11:25) [2]

Не могу определить CLSID_HTMLDocument. Как? (не силён я в COM).


 
nikkie ©   (2003-09-08 11:30) [3]

uses MSHTML
CLASS_HTMLDocument


 
Razorblade   (2003-09-08 16:24) [4]

spHTMLDocument, spPSI - какой класс?


 
nikkie ©   (2003-09-08 22:30) [5]

там же все написано.
var
HTMLDocument: IHTMLDocument;
HTMLElement: IHTMLElement;
PSI: IPersistStreamInit;
begin
CoCreateInstance(...);
PSI := HTMLDocument as IPersistStreamInit;
PSI.InitNew;
PSI := nil;
HTMLElement := HTMLDocument.body;
HTMLElement.innerHTML := HTML;
end;


 
Razorblade   (2003-09-09 10:45) [6]

Напиши пожалуйста полностью код на Delphi для загрузки HTML файла.
Если не трудно. Заранее спасибо.



Страницы: 1 вся ветка

Текущий архив: 2003.09.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
9-71459
[Baradoo]
2003-03-20 22:48
2003.09.22
Налет хакеров на сервера от hotbox и mail


1-71749
Olexander
2003-09-09 21:55
2003.09.22
компонент не на форме


14-71881
3APA3A
2003-09-03 10:26
2003.09.22
Windows 2003 Server


8-71765
tv
2003-05-23 13:25
2003.09.22
TCanvas


14-71858
jack128
2003-09-01 00:17
2003.09.22
Именинники 1 сентября