Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];

Вниз

Проверка откр. / закр. тага в таблицах 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.03 c
14-71853
Noname_
2003-09-01 10:13
2003.09.22
DHCP сервер на Pro


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


1-71698
Стрелок
2003-09-11 08:41
2003.09.22
Знаки на рабочем столе!


4-72010
Andriy
2003-07-19 15:39
2003.09.22
TerminateProcess. How to use more then...


3-71504
Andrew
2003-09-01 09:07
2003.09.22
Отчет для Fox-таблиц. Поле типа N;10;0





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский