zamyknie Internet Explorer

0

jak zamknąć pierwsze okno przeglądarki.
var
Handle : HWND;
begin
Handle := FindWindow('IEFrame',nil);
PostMessage(Handle, WM_CLOSE, 0, 0);

to są okna na pasku 1,2,3,4,5

powyższą procedurą zamykam aktywne okno ale jak zrobić zeby mimo to które okno jest aktywne a które zminimalizowane program zamknął jako pierwsze okno nr 1

Dopisane : Albo jeżeli to możliwe to zamknąć okno znając jedynie jego adres URL

0

Wykorzystaj EnumWindows do uzyskania uchwytów do okien, GetClassName (albo poniższej GetClass) do sprawdzenia które to są okna explorera (IEFrame) i funkcji:

Function IEGetURL(IEHandle:THandle):String;
Begin
  IEHandle:=FindWindowEx(IEHandle,0,'WorkerA',Nil);
  IEHandle:=FindWindowEx(IEHandle,0,'rebarwindow32',Nil);
  IEHandle:=FindWindowEx(IEHandle,0,'comboboxex32',Nil);
  IEHandle:=FindWindowEx(IEHandle,0,'ComboBox',Nil);
  IEHandle:=FindWindowEx(IEHandle,0,'Edit',Nil);
  Result := GetCaption(IEHandle);
End;

do pobrania URL'a.

Function GetCaption(Handle: hWnd):String;
Var L:Integer;
    Buffer:String;
Begin
  L:= SendMessage(Handle, WM_GETTEXTLENGTH, 0, 0)+1;
  SetLength(Buffer,L);
  SendMessage(Handle,WM_GetText,L,Integer(PChar(Buffer)));
  Result:=Buffer;
  SetLength(Buffer,0)
End;

Function GetClass(Handle: hWnd):String;
Var L:Integer;
    Buffer:String;
Begin
  SetLength(Buffer,MAX_PATH);
  L:=GetClassName(Handle,PChar(Buffer),MAX_PATH);
  SetLength(Buffer,L);
  Result:=Buffer;
  SetLength(Buffer,0);
End;
0

Dzięki za podpowiedz teraz mam funkcje która pokazuje nazwy wszystkich otwartych okien Internet Explorer

function EnumWindowProc(uchwyt:HWnd;P:Pointer):boolean;stdcall;
var
 winname,cname:array[0..144]of char;
begin
 result:=true;
 getwindowtext(uchwyt,winname,144);
 getclassname(uchwyt,cname,144);
 if cname='IEFrame' then
 Form1.RichEdit1.Lines.Add(winname)
end;

Ale jak mam zrobić żeby na richEdit zostały one wypisane w kolejności w jakiej leżą na belce
np : Mam otwartych 5 okien internet Explorer po kolei 1,2,3,4,5 a w RichEdit nazwy otwartych okien pokazują mi sie w innej kolejności 3,2,5,4,1

1 użytkowników online, w tym zalogowanych: 0, gości: 1