如何找IE窗口的句柄 ( 积分: 30 )

  • 主题发起人 主题发起人 fxb
  • 开始时间 开始时间
F

fxb

Unregistered / Unconfirmed
GUEST, unregistred user!
用&quot;ShellExecute(handle, Pchar('open'),pchar('http://www.xxx.com),Pchar(''), Pchar(''), SW_SHOWNORMAL);&quot;打开IE窗口后,如何找到这个窗口的句柄?<br>1、该窗口的标题栏不固定,每次在变化<br>2、会打开多个IE窗口,要找到每个IE的句柄<br>如何实现?
 
用&quot;ShellExecute(handle, Pchar('open'),pchar('http://www.xxx.com),Pchar(''), Pchar(''), SW_SHOWNORMAL);&quot;打开IE窗口后,如何找到这个窗口的句柄?<br>1、该窗口的标题栏不固定,每次在变化<br>2、会打开多个IE窗口,要找到每个IE的句柄<br>如何实现?
 
procedure TForm1.Button1Click(Sender: TObject);<br>var<br> &nbsp;hCurWindow:HWnd;<br> &nbsp;Text: string;<br> &nbsp;i:Integer;<br>begin<br> &nbsp;hCurWindow:=GetWindow(Handle,GW_HWNDFIRST);<br> &nbsp;while hCurWindow &lt;&gt; 0 do<br> &nbsp;begin<br> &nbsp; &nbsp;SetLength (Text, 100);<br> &nbsp; &nbsp;i:=GetClassname(hCurWindow,pchar(text),100);<br> &nbsp; &nbsp;if copy(text,1,i)='IEFrame' then<br> &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp;i:=GetWindowText(hCurWindow,pchar(text),100);<br> &nbsp; &nbsp; &nbsp;Memo1.Lines.Add(copy(text,1,i)+' &nbsp; '+#13+#10+'句柄'+IntToStr(hCurWindow));<br> &nbsp; &nbsp;end;<br> &nbsp; &nbsp;hCurWindow:=GetWindow(hCurWindow,GW_HWNDNEXT);<br> &nbsp;end;<br>end;
 
接受答案了.
 
后退
顶部