Главная страница
    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.47 MB
Время: 0.044 c
14-1117931066
FVlad
2005-06-05 04:24
2005.07.11
Delphi или Basic


14-1118811507
Ega23
2005-06-15 08:58
2005.07.11
С днём рождения! 15 июня


14-1118657144
emfw
2005-06-13 14:05
2005.07.11
Процент


14-1118586740
ПЛОВ
2005-06-12 18:32
2005.07.11
О безопастности мобильных телефонов


11-1101251725
XProger
2004-11-24 02:15
2005.07.11
Старнная ошибка в RichEdit1





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский