delphi 获取获取当前网页的URL(100)

  • 主题发起人 主题发起人 zhangxuepu107
  • 开始时间 开始时间
Z

zhangxuepu107

Unregistered / Unconfirmed
GUEST, unregistred user!
我想获取当前ie的URL 地址,只要客户打开IE,输入地址后,DELPHI就自动获取和指定的网页地址比对。怎么去实现啊。各位高手指点一下!!
 
你的目的的网络监控吧
 
差不多。请指教一下。
 
我也想知道怎么实现,高手快来。顶。。
 
FindWindow找到浏览器,EnumWindow找到类名为Edit的控件,它的内容就是URL了
 
能贴出详细代码吗?
 
我问题有两个:1浏览器的类名是什么?不知道它的类名怎么用FINDWINDWOS函数2 FINDWINDOW函数返回的是一个句柄,怎么查看URL。还有那个高手有用EnumWindow()函数列举窗口可以加到Delphi 的Memo等控件中的例子,能不能给我发个或贴下。邮箱:qingzhangqing@yahoo.com.cn,顶。
 
procedure Tfrmdropfile.Button1Click(Sender: TObject);var hwndIE,hwndWorker,hwndToolbar,hwndComboboxex,hwndCombo,hwndEdit : thandle ; buf:array[0..250] of char;begin hwndIE := FindWindow('IEFrame', nil); hwndWorker := FindWindowEx(hwndIE, 0, 'WorkerW', nil); hwndToolbar := FindWindowEx(hwndWorker, 0, 'ReBarWindow32', nil); hwndComboboxex := FindWindowEx(hwndToolbar, 0, 'ComboBoxEx32', nil); hwndCombo := FindWindowEx(hwndComboboxex,0,'ComboBox', nil); hwndEdit := FindWindowEx(hwndCombo,0, 'Edit', nil); sendmessage(hwndEdit,WM_GETTEXT,sizeof(buf),integer(@buf)); showmessage(strpas(buf));end;
 
DELPHI 以哪种方式获取呢?用timer 控件不太合适!
 
学习,并留下足迹证明我来过::::::::::::::::::::::::::::
 
各位高手发表一下自己的意见啊。
 
写BHO啊,IE启动自动加载,然后浏览网页有相应事件,在事件中通知你的应用程序就行了前提是你的BHO不会被第三方工具给卸载掉了
 
抓http包就行了,不管什么浏览器都不放过。
 
要想从这个方向入手做网络监控比较难。不如从连接到的对方的IP地址入手,发现是违规的ip,就把这个连接断开。你可以看看 tcpview.exe 的做法。如果你要监视IE访问地址,提供一个最直接的方法:说明:以下代码可以查找资源管理器(包括IE)打开的地址,做些筛选就是你想要的结果。做IE插件也可以实现,网上搜索下就一大堆。uses SHDocVw;procedure TForm1.BitBtn1Click(Sender: TObject);Var Browser: IWebBrowser2; I: Integer;begin With TShellWindows.Create(Nil) Do Begin try For I := 0 To Count - 1 do Begin Browser := Item(I) As IWebBrowser2; memo1.Lines.Add(Format('(%s) : %s',[Browser.LocationName, Browser.LocationURL])); End; finally Free; end; End;end;
 
现在如何取到这个IE的URL已经可以实现,现在的问题是,什么时候去取ie的rul,当ie的地址发生改变后,怎么去取最新的rul
 
用timer+stringlist可以办到。
 
能说的详细一些吗?
 
高手们对你的问题,无法答辨了[:(]
 
对网络编程我不熟悉现在这个TIMER和STRINGLIST,用TIMER定时去执行这个事件,读取URL,并把它存在StringList中。
 
mark,,学习。。
 
后退
顶部