Вниз
Скачать: CL | DM;

TWebBrowser, Просмотр кода, Access Violation   Найти похожие ветки 

 
timekiller ©   (2010-05-22 11:24) [0]

Сутки добрые, Уважаемые Знатоки!

Помогите с проблемой в TWebBrowser, загрузкой страницы и просмотром кода:

procedure TForm1.SpeedButton1Click(Sender: TObject);
var //StartN,EndN:integer;
i:integer;
s:string;
begin
//идем на страницу
try //обезопасим
WebBrowser1.Navigate("http://www.google.com");
except
ShowMessage("немогу, вруби инет");
end;

//выводим текст исходного кода страницы
ShowMessage(GetHTMLSource(WebBrowse r1));

............ на этом месте выскакивает Access Violation

Функция GetHTMLSource(WebBrowser1):

PersistStream:=WB.Document as IPersistStreamInit;
MStream:=TMemoryStream.Create;
SL:=TStringList.Create;
try
Stream:=TStreamAdapter.Create(MStre am,soReference) as IStream;
GResult:=PersistStream.Save(Stream, True); //тут и выскакивает AV
if FAILED(GResult) then
MessageDlg("Ошибочка при передачи HTML source",mtError,[mbOk],0);
finally
MStream.Position:=0;
SL.LoadFromStream(MStream);
Result:=SL.Text;
MStream.Free;
SL.Free;
end;

Если функцию GetHTMLSource навесить на отдельную кнопку - все, соответственно, работает нормально... только нажимать надо на 2 кнопки: сначала переход на страницу, и только потом отображение кода... А нужно всетаки все за один раз... Помогите?
095 на форуме Добавить отзыв для 095 Пожаловаться на это сообщение    Редактировать/удалить сообщение


 
Плохиш ©   (2010-05-22 11:52) [1]

TWebBrowser.Busy
TWebBrowser.OnNavigateComplete2
TWebBrowser.OnDocumentComplete


 
timekiller ©   (2010-05-22 12:05) [2]

While WebBrowser1.Busy do Application.ProcessMessages;
 ShowMessage(GetHTMLSource(WebBrowser1));

йЕСССС ! Бинго! Спасибо огромное!



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.053 c
15-1269981002
Юрий
2010-03-31 00:30
2010.08.27
С днем рождения ! 31 марта 2010 среда


15-1269974235
Masolin_gazin
2010-03-30 22:37
2010.08.27
Почем Delphi 7 не произвести компиляцию.


15-1275630445
oxffff
2010-06-04 09:47
2010.08.27
Июнь. Витязево(Анапа). Кто-нибудь собирается?


2-1266915505
Irisss
2010-02-23 11:58
2010.08.27
Получить ip удаленного ПК


15-1268825050
TUser
2010-03-17 14:24
2010.08.27
Сканируем в принтер!




   Наверх