AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Titel und URL anhand des Klassenames ermitteln?
Thema durchsuchen
Ansicht
Themen-Optionen

Titel und URL anhand des Klassenames ermitteln?

Ein Thema von TriphunEM · begonnen am 9. Feb 2006 · letzter Beitrag vom 9. Feb 2006
Antwort Antwort
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#1

Titel und URL anhand des Klassenames ermitteln?

  Alt 9. Feb 2006, 10:40
Hi,

ich möchte den Fenstertitel und die URL verschiedener Browser (in meinem Code IE,Firefox und Opera) ermitteln.

Das mit dem Fenstertitel ist überhaupt kein Problem, aber die URL bekomm ich nicht aus den Adressleisten des Firefox und Opera.
Bei IE klappt es, zu mal ich mit WinSpy auch den Klassennamen raus bekomme.

Nur bei Firefox und Opera scheint das alles in ein Handle gepackt zu sein.
Weiß jemand wie ich an den Text in der Adressleiste ran komme???

Der folgende Code soll alle Fenstertitel und URLs der geöffneten Browser anzeigen. Wie gesagt bei Firefox und Opera fehlt eben die URL.

Ich hoffe mir kann da jemand weiterhelfen????

Delphi-Quellcode:
procedure TMainForm.act_AddBookmarkExecute(Sender: TObject);
var
  hwnd, chwnd : THandle;
  p : array[0..256] of Char;
begin
  hwnd := FindWindow(nil, nil);
  GetClassName(hwnd, P, SizeOf(P));

  while hwnd <> 0 do begin
    hwnd := GetWindow(hwnd, GW_HWNDNEXT);
    GetClassName(hwnd, P, SizeOf(P));

    {****
    * Firefox
    ****}

    if string(P) = 'MozillaUIWindowClassthen begin
      // Fenstertitel holen
      GetWindowText(hwnd, P, 255);
      site_Desc := P;
      // Url holen
      chwnd := FindWindowEx(hwnd, 0, 'MozillaWindowClass', nil);
      SendMessage(chwnd, WM_GETTEXT, SizeOf(P), Integer(@P));
      site_Url := string(P);

      ShowMessage('Firefox : '+site_Desc+#13#10+site_Url);
    end;

    {****
    * Internet Explorer
    ****}

    if string(P) = 'IEFramethen begin
      // Fenstertitel holen
      GetWindowText(hwnd, P, 255);
      site_Desc := P;
      // Url holen
      chwnd := FindWindowEx(hwnd, 0, 'WorkerW', nil);
      chwnd := FindWindowEx(chwnd, 0, 'ReBarWindow32', nil);
      chwnd := FindWindowEx(chwnd, 0, 'ComboBoxEx32', nil);
      SendMessage(chwnd, WM_GETTEXT, SizeOf(P), Integer(@P));
      site_Url := string(P);

      ShowMessage('IE : '+site_Desc+#13#10+site_Url);
    end;

    {****
    * Opera
    ****}

    if string(P) = 'OpWindowthen begin
      // Fenstertitel holen
      GetWindowText(hwnd, P, 255);
      site_Desc := P;
      // Url holen
      chwnd := FindWindowEx(hwnd, 0, 'OperaWindowClass', nil);
      SendMessage(chwnd, WM_GETTEXT, SizeOf(P), Integer(@P));
      site_Url := string(P);

      ShowMessage('Opera : '+site_Desc+#13#10+site_Url);
    end;

  end;
end;
Gibt es vielleicht ne möglichkeit alle unterklassen einer klasse angezeigt zu bekommen?

MfG und Thx, Frank
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Titel und URL anhand des Klassenames ermitteln?

  Alt 9. Feb 2006, 11:06
Hi.

Hier ein Link, während du auf Antworten warten musst.

Grüße vom marabu
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#3

Re: Titel und URL anhand des Klassenames ermitteln?

  Alt 9. Feb 2006, 11:48
danke dir,

aber von VB hab ich keine ahnung. seh da ne so richtig durch.
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#4

Re: Titel und URL anhand des Klassenames ermitteln?

  Alt 9. Feb 2006, 17:06
ich hab mal mit der lösung der unit ddeman rum probiert.

aber leider genisst die unit ddeman kein guten ruf und opera unterstüzt sie leider auch nicht!!!

????
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 Uhr.
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