Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как найти handlu всех открытых приложений ??? [D7, WinXP]


PRT ©   (2006-06-17 22:28:00) 

Доброго времени суток! Подскажите как найти handlu всех открытых приложений ???
(только приложения с окнами)


Handle   (2006-06-18 12:53:00) [1]

var
 Wnd:        hWnd;
 buff:       array[0..MAX_PATH] of Char;
 PrId:       DWORD;
 PrHandle:   THandle;
begin
 ListBox1.Clear;
 Wnd := GetWindow(Handle, gw_HWndFirst);
 while Wnd <> 0 do begin
   if (Wnd <> Application.Handle) and
     IsWindowVisible(Wnd) and
     (GetWindow(Wnd, gw_Owner) = 0) and
     (GetWindowText(Wnd, buff, sizeof(buff)) <> 0)
     then begin
     GetWindowThreadProcessId(Wnd, PrId);
     PrHandle := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, PrId);
     ListBox1.Items.Add(IntToStr(PrHandle));


   end;
   Wnd := GetWindow(Wnd, gw_hWndNext);
 end;
 ListBox1.ItemIndex := 0;


PRT   (2006-06-18 12:05:00) [2]


> Чтобы потом создать таймер и посылать с переодичностью в
> 1мс всем несвернутым собщение WM_CLOSE  :)  ??

Нет, я таким не занимаюсь ...
Хочу создать программку которой пользователь сможет ставить пароли на открытые окна, но для этого мне нужно знать хендлы окон .... вот


guard_gg   (2006-06-18 08:10:00) [3]

Чтобы потом создать таймер и посылать с переодичностью в 1мс всем несвернутым собщение WM_CLOSE  :)  ??

Скажи для чего, может пришлю.. ;)


Наверх

Титульная страница Поиск, карта сайта Написать письмо