Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Динамически создаваемый TWebBrowser событие OnDownloadComplete?


Johnnnnnn ©   (2008-05-16 01:20:00) 

Создаю:
var
web: array[1..100] of TWebBrowser;
begin
web[1]:=TWebBrowser.Create(nil);
Form1.InsertControl( web[1] );
web[1].OnDownloadComplete:=MyOnDownC;
web[1].Navigate(' http://www.google.com');
end;

процедура для события:

procedure TForm1.MyOnDownC(Sender:Tobject);
var
s:string;
document:variant;
begin
document:=TWebBrowser(sender).Document as IHtmlDocument2;
s:=document.all.tags('body').item(0).innertext;
form1.Memo1.lines.add(s);
end;

выскакивает ошибка. Подправте что нетак плиз?

мастера delphi


Johnnnnnn   (2008-05-16 16:10:00) [1]

Там же четко и внятно описан прототип метода-обработчика - vot eto:) ladno sory esli cto bydy sidet razbiratsya


Сергей М.   (2008-05-16 16:00:00) [2]


> что ето значит


Что "ето" ?


Johnnnnnn   (2008-05-16 15:57:00) [3]


> Опять справку не читал)
>
> Там же четко и внятно описан прототип метода-обработчика
> каждого из упомянутых событий

Дак еслиб я еще понимал что ето значит:(


Сергей М.   (2008-05-16 15:55:00) [4]


> что опять нетак?


Опять справку не читал)

Там же четко и внятно описан прототип метода-обработчика каждого из упомянутых событий


Johnnnnnn   (2008-05-16 15:50:00) [5]

Агу ну я самого начала пытался сделать OnDocumentComplete выдавало Incompatible types:'Parameter lists differ' теперь вот тожесамоу выдает на OnNavigateComplete2 подскажите что опять нетак?


ANB   (2008-05-16 15:48:00) [6]

Вот такая скотина этот протокол HTTP. :)


Сергей М.   (2008-05-16 15:36:00) [7]


> че делать с ней непонятно


Справку читать.

Там сказано:

Note: Unlike the OnNavigateComplete2 event, OnDownloadComplete occurs even if the Web browser does not successfully navigate to an URL.


Johnnnnnn   (2008-05-16 15:35:00) [8]

I>
> Скорее всего здесь падает.
> Не всегда по событию OnDownloadComplete объект документ
> уже есть.
> Добавь проверку.


Да тоже про ето жумал наверное добавлю таймер и буду его запускать по OnDownloadComplete а он уже будет чтото делать с страницей


Сергей М.   (2008-05-16 15:33:00) [9]


> Не всегда по событию OnDownloadComplete объект документ
> уже есть


Тогда падать должно строчкой выше, поскольку при AS происходит вызов метода QueryInterface у несуществующего интерфейсного объекта


Johnnnnnn   (2008-05-16 15:32:00) [10]

Да строчка кода то вот ета
s:=document.all.tags('body').item(0).innertext;
только че делать с ней непонятно


ANB   (2008-05-16 15:28:00) [11]


> s:=document.all.tags('body').item(0).innertext;

Скорее всего здесь падает.
Не всегда по событию OnDownloadComplete объект документ уже есть.
Добавь проверку.


Сергей М.   (2008-05-16 15:03:00) [12]


> 004564C3


Меню Search -> Find Error .., вводишь это шаманское число и компилятор показывает тебе строчку кода, приведшего к этой ошибке.

Проект д.б. собран с опциями отладки и запущен из-под IDE.


Johnnnnnn   (2008-05-16 14:47:00) [13]

Думал просто что ситуация стандартная и многие сталкивались уже поетому ошибку непривел

Project xxxx raised exception class EAccessViolation with message 'Access violation at address 004564C3 in module '1.exe' Read of address 00000000'.

Ps.

Еыли етоет до вывести в кнопку

procedure TForm1.Button6Click(Sender: TObject);
var
s:string;
document:variant;
begin
document:=web[1].Document as IHtmlDocument2;
s:=document.all.tags('body').item(0).innertext;
form1.Memo1.lines.add(s);
end;

то все работает


Германн   (2008-05-16 01:39:00) [14]


> выскакивает ошибка. Подправте что нетак плиз?

Если "выскакивает" ошибка, то нужно сказать какая ошибка и привести текст сообщения об ошибке. Только не говори, что "там что-то непонятное на английском языке". И когда она "выскакивает" при компиляции или при работе программы?


Наверх

Титульная страница Поиск, карта сайта Написать письмо