Главная страница
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.02 c
14-71926
Alice
2003-09-03 00:13
2003.09.22
Как вернуть винт ???


14-71850
ArtemB
2003-09-01 13:51
2003.09.22
ADO + *.mdb


7-71989
R4D][
2003-07-09 19:24
2003.09.22
GetMappedFileName


1-71687
pashtet
2003-09-10 10:39
2003.09.22
Как защитить свой продукт от пиратства?


8-71766
e}{e
2003-05-19 00:29
2003.09.22
Как запретить компоненту двигаться по диагонали?