Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi TWebBrowser -> POPUP URL? (https://www.delphipraxis.net/41076-twebbrowser-popup-url.html)

BorlanDelphiUser 25. Feb 2005 15:39


TWebBrowser -> POPUP URL?
 
Hallo,
Wie findet man im OnNewWindow2 des TWebbrowsers die URL heraus? Ohne einen zweiten TWebBrowser zum auslesen zu benutzen, denn dann entsteht ja doppelter Traffik.

Hat jemand eine Idee? Kann man vielleicht das IDispatch auslesen? Dort müsste es doch eigelich drinstehen oder?

demo13 25. Feb 2005 15:49

Re: TWebBrowser -> POPUP URL?
 
das wüsste ich auch gerne...hab mich bisher nur nicht getraut zu fragen :D

toms 25. Feb 2005 16:02

Re: TWebBrowser -> POPUP URL?
 
Hi,

Im OnNewWindow2 kann man die URL IMO nicht herausfinden.
Erst ab Win XP SP2. Dann gibt's OnNewWindow3.

BeforeNavigate2 Liefert aber die URL, Flags usw.

Delphi-Quellcode:
procedure TForm1.BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin

end;

demo13 25. Feb 2005 16:07

Re: TWebBrowser -> POPUP URL?
 
ich hab service pack 2 aber bei mir gibt es kein "OnNewWindow3" nur "OnNewWindow2"...
muss man den twebbrowser vllt. noch mal neu installieren bzw. neu in delphi importieren?

BorlanDelphiUser 25. Feb 2005 16:19

Re: TWebBrowser -> POPUP URL?
 
Es geht mir ja dabei um die URL der POPUPS die aufgerufen werden ... und nicht um die URL die per klick Aufrufe. Deswegen denke ich ist BeforeNavigate2 hier fehl am Platze.

toms 25. Feb 2005 16:21

Re: TWebBrowser -> POPUP URL?
 
Zitat:

Zitat von demo13
ich hab service pack 2 aber bei mir gibt es kein "OnNewWindow3" nur "OnNewWindow2"...
muss man den twebbrowser vllt. noch mal neu installieren bzw. neu in delphi importieren?

Du musst zuerst das neue ActiveX importieren...

toms 25. Feb 2005 16:44

Re: TWebBrowser -> POPUP URL?
 
Probiert mal das:

Delphi-Quellcode:
procedure TForm1.WebBrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  URL: WideString;
begin
  URL := ((TEmbeddedWB(Sender).document as IHTMLDocument2).activeElement as IHTMLElement).getAttribute('href', 0);
end;

demo13 25. Feb 2005 16:52

Re: TWebBrowser -> POPUP URL?
 
kannst du mir vllt. noch sagen was an dem code falsch ist dann bin ich wunschlos glücklich :D

Delphi-Quellcode:
procedure TForm4.webNewWindow2(ASender: TObject; var ppDisp: IDispatch;
  var Cancel: WordBool);
var
  NewWindow: TForm4;
  URL: WideString;
begin
  cancel:=Popupblocker;
  if cancel=false then
    begin
      NewWindow:=TForm4.Create(self);
      URL:=((TEmbeddedWB(ASender).document as IHTMLDocument2).activeElement as IHTMLElement).getAttribute('href', 0);
      NewWindow.Show;
      NewWindow.web.Navigate(url);
    end;
end;
der compiler sagt:
"Undeclared identifier: 'TEmbeddedWB'"
und das gleiche für
"document"

toms 25. Feb 2005 16:55

Re: TWebBrowser -> POPUP URL?
 
Zitat:

Zitat von demo13
der compiler sagt:
"Undeclared identifier: 'TEmbeddedWB'"
und das gleiche für
"document"

:arrow: Ersetze TEmbeddedWB mit TWebbrowser


Zitat:

NewWindow:=TForm4.Create(self);
URL:=((TEmbeddedWB(ASender).document as IHTMLDocument2).activeElement as IHTMLElement).getAttribute('href', 0);
NewWindow.Show;
NewWindow.web.Navigate(url);
Warum so kompliziert?

Delphi-Quellcode:
NewWindow := TForm4.Create(self);
NewWindow.Show;
ppDisp := NewWindow.web.DefaultDispatch;

BorlanDelphiUser 25. Feb 2005 16:58

Re: TWebBrowser -> POPUP URL?
 
@also da muss ich ja toms mal recht geben ... das was du da vor hast wurde hier im forum schon tausendmal erklärt.

Ich brauche nur die URL ... deswegen werd ich das von toms gleich mal ausprobieren ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:28 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz