22. december 2003 - 23:50
Der er
8 kommentarer og 1 løsning
Hente tekst fra adresse linje DELPHI
Hvordan finder jeg ud af. Hvad der står i iexplorer adresse linje? ( Hvergang der bliver trykket go/enter) ?? // BaXoS
Annonceindlæg fra Academic Work Denmark A/S
Slettet bruger
23. december 2003 - 00:25
#1
Du kan bruge denne kode til at få fat i adressen i adresse linien: function GetIEURL: String; var IEHandle, WorkerHandle, BarHandle, URLEditHandle: HWND; begin IEHandle := FindWindow('IEFrame', nil); WorkerHandle := FindWindowEx(IEHandle, 0, 'WorkerW', nil); BarHandle := FindWindowEx(WorkerHandle, 0, 'ReBarWindow32', nil); URLEditHandle := FindWindowEx(BarHandle, 0, 'ComboBoxEx32', nil); SetLength( Result, SendMessage(URLEditHandle, WM_GETTEXTLENGTH, 0, 0 )+1); SendMessage(URLEditHandle, WM_GETTEXT, Length(Result), integer(Result)); end; Men ved ikke, hvordan man får den til at reagere når man trykker på go.
23. december 2003 - 00:36
#2
jeg forsøger mig lidt frem så og venter på lidt flere svar ;D
23. december 2003 - 14:58
#3
hmm kan det ikke lade sig gøre om at selected fra tegn 1 til 4 ? altså i Adressen
Slettet bruger
23. december 2003 - 15:19
#4
Hvad mener du?? Om det kan lade sig gøre at markere tegn 1 til 4 i adresse linien??
23. december 2003 - 15:34
#5
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) statusbox1: TGroupBox; Label1: TLabel; Memo1: TMemo; Label2: TLabel; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; url: string; implementation {$R *.dfm} function GetIEURL: String; var IEHandle, WorkerHandle, BarHandle, URLEditHandle: HWND; begin IEHandle := FindWindow('IEFrame', nil); WorkerHandle := FindWindowEx(IEHandle, 0, 'WorkerW', nil); BarHandle := FindWindowEx(WorkerHandle, 0, 'ReBarWindow32', nil); URLEditHandle := FindWindowEx(BarHandle, 0, 'ComboBoxEx32', nil); SetLength( Result, SendMessage(URLEditHandle, WM_GETTEXTLENGTH, 0, 0 )+1); SendMessage(URLEditHandle, WM_GETTEXT, Length(Result), integer(Result)); end; procedure CheckTYPE (Sender: TObject); begin form1.Memo1.SelStart := 0; form1.Memo1.SelLength := 4; form1.Label2.Caption := ' Type : ' + form1.Memo1.SelText; end; procedure CheckDOT (Sender: TObject); begin end; procedure TForm1.FormCreate(Sender: TObject); begin url := GetIEURL; memo1.Text := url; label1.Caption := 'Adresse lige nu : ' + GetIEURL; statusbox1.Caption := 'IE Status : '; CheckTYPE(nil); end; end. - Nu finder den starten af adressen men hvordan finder jeg så slutningen altså .dk / .com .ck .WhatEver
Slettet bruger
23. december 2003 - 15:48
#6
function Get(URL: String): String; var str1, str2: String; begin str1 := Copy(URL, Pos('//',URL)+2, Length(URL)+Pos('//',URL)+1); str2 := Copy(str1, 0, Pos('/',str1)-1); Result := Copy(str2, LastDelimiter('.',str2), Length(str2)- LastDelimiter('.',str2)+1); end; Det skulle virke :)
23. december 2003 - 19:28
#7
DET VIKER YES YES :P Smid svar
Slettet bruger
23. december 2003 - 19:30
#8
Svar :)
23. december 2003 - 19:31
#9
Super!
Kurser inden for grundlæggende programmering