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

Вниз

Выскакивающие окна iexplorera   Найти похожие ветки 

 
Opilki_Inside ©   (2005-04-07 15:32) [0]

Иногда при загрузке страницы почему-то появляется окно интернет эксплорера о том что страницу невозможно загрузить... причем событие OnNewWindow обрабатываю нормально... такая ситуация происходит не всегда...


 
Rouse_ ©   (2005-04-07 22:41) [1]

Код в студию (Navigate и обработчики событий браузера)


 
Opilki_Inside ©   (2005-04-08 10:52) [2]

var
 URL: WideString;

begin
...
  url := "http://yandex.ru/";    

   WB.Silent := true;
   WB.OnDocumentComplete:=WB1DocumentComplete;
   WB.OnNewWindow2:=WB1NewWindow2;
   WB.OnBeforeNavigate2 := EmbeddedWB1BeforeNavigate2;

   WB.Width := Width;
   WB.Height := Height;
   WB.Visible := true;
   WB.ParentWindow := Handle;
   currentFrame := nil;

   wb.Navigate(URL);

   FURL := url;

   repeat
     Application.HandleMessage;
   until (loadCompleted) or (GetTickCount-beginTime > dm.loadPageTimeOut) or (not TimeOut.Enabled);

   wb.Stop;
...
end;

...

procedure TfGetLinks.wb1NewWindow2(Sender: TObject; var ppDisp: IDispatch;
 var Cancel: WordBool);
var
 url: wideString;
begin
 //флешка
 if (wf <> nil) and (lockPopupWindow) then
 begin
   addlog("Новое окное для флешки");
   ppDisp := wf.FWB.Application;
 end else
 //pop up window!
 begin
     ppDisp := WBpopUp.Application;
     addlog("Обнаружено POPUP окно: "+TWebBrowser(Sender).LocationURL);
 end;
end;


т.е. в любом случае я передаю всплывающие окно одному из браузеров. почему может происходить "вылет" этой страницы в iexplorer?

procedure TfGetLinks.wb1DocumentComplete(Sender: TObject;
 const pDisp: IDispatch; var URL: OleVariant);
var
 curWebBrowser, topWebBrowser: IWebBrowser2;
 w, h, i, j: Integer;
 fName: string;
begin

 curWebBrowser := pDisp as IWebBrowser2;
 topWebBrowser := (Sender as TWebBrowser).DefaultInterface;

 if curWebBrowser = topWebBrowser then
 begin
   //Документ полностью загружен!
   //начинаем анализировать

   loadCompleted := true;
   if not isFrameScan then
     localURL := TEmbeddedWB( sender).LocationURL;

   TEmbeddedWB(sender).Stop;

   addLog("Загрузка страницы "+url+" завершина");

     w := trunc(TEmbeddedWB(sender).OleObject.Document.Body.ScrollWidth);
     h := trunc(TEmbeddedWB(sender).OleObject.Document.Body.ScrollHeight*1.04);
     TEmbeddedWB(sender).Height := h;
     TEmbeddedWB(sender).Width := w;

   try
     ScanAllLinks(WB.DefaultInterface, pDisp);

     finishScan := true;

     isFrameScan := true;
     for i := 1 to wb.FrameCount-1 do
     begin
       currentFrame := nil;
       for j := 0 to linkList.GetFrameObjectCount-1 do
       begin
         if (linkList.GetFrameObject(j).src = TEmbeddedWB(sender).GetFrame(i).LocationURL) then
         begin
           currentFrame := linkList.GetFrameObject(j);
           if (TEmbeddedWB(sender).GetFrame(i).Application <> nil) then
           begin
             addlog("Анализируем фрейм: ""+currentFrame.src+""");
             ScanAllLinks(TEmbeddedWB(sender).GetFrame(i), TEmbeddedWB(sender).GetFrame(i).Application);;
           end;
         end;
       end;
     end;

     isFrameScan := false;

   except
     on e: exception do
       addLog("Ошибка при анализе фрейма: "+e.Message,2);
   end;

   FinishScan := true;

 end;
end;


procedure TfGetLinks.EmbeddedWB1BeforeNavigate2(Sender: TObject;
 const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
 Headers: OleVariant; var Cancel: WordBool);
begin
 if loadCompleted then
 begin
   if (wf <> nil) and (lockPopupWindow) then
   begin
     wf.FWB.Navigate(URL);
   end;
   Cancel := true;
 end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.057 c
3-1117528118
Nikola62
2005-05-31 12:28
2005.07.11
Установка активной колонки в dbgridEh


14-1118509907
Kolan
2005-06-11 21:11
2005.07.11
Как открыть проект состояший из нескольких...


1-1119434277
syte_ser78
2005-06-22 13:57
2005.07.11
как определить/установить скорость вращения трехконтактного кулер


1-1118892064
Магнум
2005-06-16 07:21
2005.07.11
TListView


1-1118501753
newindelphi
2005-06-11 18:55
2005.07.11
quickrep, detailband and frames