Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];




Вниз

Как взять список окон в Windows (жел-но с Handl-ами) 


ILYAKA   (2001-11-23 18:43) [0]

Вот, изучаю системные сообщения Windows и напоролся на интересный вопрос: как взять список окон? Список процессов брать я умею с помощью CreateToolhelp32Snapshot, а вот список окон...
Помогите пожалуйста



Suntechnic   (2001-11-23 19:58) [1]

EnumWindows and EnumChildWindows.



limon   (2001-11-23 20:07) [2]

Уж не помню где скачал :)

procedure TForm1.Button1Click(Sender: TObject);
VAR
Wnd : hWnd;
buff: ARRAY [0..127] OF Char;
begin
ListBox1.Clear;
Wnd := GetWindow(Handle, gw_HWndFirst);
WHILE Wnd <> 0 DO
BEGIN {Не показываем:}
IF (Wnd <> Application.Handle) AND {-Собственное окно}
(IsWindowVisible(Wnd)or checkbox1.checked) AND {-Невидимые окна}
((GetWindow(Wnd, gw_Owner) = 0)or checkbox2.checked) AND {-Дочернии окна}
(GetWindowText(Wnd, buff, sizeof(buff)) <> 0) {-Окна без заголовков}
THEN
BEGIN
GetWindowText(Wnd, buff, sizeof(buff));
ListBox1.Items.Add(StrPas(buff));
END;
Wnd := GetWindow(Wnd, gw_hWndNext);
END;
ListBox1.ItemIndex := 0;
end;




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.019 c
3-75498           Сашка                 2001-12-20 20:11  2002.01.24  
SQL


3-75511           NikoM                 2001-12-21 05:15  2002.01.24  
DBEdit


1-75568           NNC                   2002-01-06 14:21  2002.01.24  
Вопросик!


6-75643           Glux                  2001-10-24 17:05  2002.01.24  
Руссский текст в Subject


1-75618           BOOOMER               2002-01-05 13:07  2002.01.24  
HDC