我想获得IE地址栏中的地址,怎么办啊???
我想获得IE地址栏中的地址,怎么办啊??? 问题点数:100、回复次数:8Top
1 楼copy_paste(木石三)回复于 2002-11-05 22:58:47 得分 12
如果有几个IE窗口,你要得哪个?ALL?
那就太深奥了,嗯,待大虾来吧。Top
2 楼xingfuniao(幸福鸟)回复于 2002-11-05 23:31:18 得分 0
当然是当前的了,被击活的!Top
3 楼copy_paste(木石三)回复于 2002-11-05 23:48:30 得分 20
以前写过,不过太久了,实在是记不得了。。。
不要我拼了老命,也帮你调好,再送给你啊,不过不记得了。。。
好像是这样:
得到前台窗口的Handle
Attach那个Handle的进程,
然后得到Focus,然后得到Text,就这样。
人老了,记忆不中了。。。Top
4 楼xingfuniao(幸福鸟)回复于 2002-11-05 23:58:16 得分 0
那真是谢谢了,如解决了,定重谢啊Top
5 楼ehom(?!)回复于 2002-11-06 00:18:40 得分 56
发送WM_GETTEXT消息
function EnumChildWindowsProc(hwnd: Integer; lparam: Longint): Boolean; stdcall;
var
buffer: array[0..255] of char;
begin
Result := True;
GetClassName(hwnd,buffer,256);
if StrPas(Buffer)='Edit' then
begin
SendMessage(hwnd,WM_GETTEXT,256,lparam);
Result:=False;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
hwnd: Integer;
buffer: array[0..255] of char;
begin
hwnd := FindWindow('IEFrame',nil);
if hwnd<> 0 then
begin
EnumChildWindows(hwnd,@EnumChildWindowsProc,Integer(@buffer[0]));
Caption := StrPas(buffer);
end;
end;
注意根据不同的IE版本做些修改!Top
6 楼zhujunfeng(ericss)回复于 2002-11-06 09:09:20 得分 4
来晚了。。Top
7 楼goodloop(小志)回复于 2002-11-10 22:29:53 得分 2
收藏~Top
8 楼hfycl(袒右)回复于 2002-11-11 09:24:28 得分 6
markTop




