![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти все окна с заданным заголовком и классом? [Win2k, WinXP]
Progh © (2004-11-19 08:43:00)Как найти все окна с заданным заголовком и классом, при том что открыто их может быть несколько одинаковых
DelphiN! (2004-11-19 13:55:00) [1]
> [1] Jay (19.11.04 09:10)
А что будет с твоим кодом, если окно не захочет закрываться? Наивный ты ;)
easy (2004-11-19 09:47:00) [2]
function EnumWindowsProc(Wnd: hWnd; Param: lParam): Bool; stdcall;
var
buf:array [0..MAX_PATH] of char;
begin
GetClassName(Wnd,buf,MAX_PATH);
if buf='IEFrame' then begin
GetWindowText(Wnd,buf,MAX_PATH);
TMemo(Param).Lines.Add(buf);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Clear;
EnumWindows(@EnumWindowsProc, Longint(Memo1));
end;
Jay (2004-11-19 09:10:00) [3]Repeat
handle := FindWindow('TForm1', 'My Window'); //или на оборот
if handle = 0 then Break; //Выход из цикла при отсутствии такого окна
PostMessage(handle, WM_QUIT, 0, 0); //тушить их, например
Until false //Безконечный цикл