Вниз
Скачать: CL | DM;

как узнать Handle окна зная handle процесса   Найти похожие ветки 

 
Polas   (2006-05-08 21:54) [0]

собственно сабж %)


 
Eraser ©   (2006-05-08 22:00) [1]


> Polas   (08.05.06 21:54)

никак... т.к. у процесса может быть несколько окон. Какое интересует? )


 
Polas   (2006-05-08 22:02) [2]

главное (единственное)


 
Eraser ©   (2006-05-08 22:09) [3]


> Polas   (08.05.06 22:02) [2]

Если единственное - перечислить все окна в системе, и в этом списке найти то единственное, GetWindowThreadProcessId которого, возвращает ID нужного процесса.


 
Polas   (2006-05-08 22:22) [4]

да но код не работает


Var
   Wd : HWnd;
   ProcessID: Integer;
   ProcessHandle : THandle;
begin
   Wd:=FindWindow(0,0);
   While (wd<>0) do
   Begin
   GetWindowThreadProcessID(Wd, @ProcessID);
   ProcessHandle := OpenProcess(PROCESS_TERMINATE, FALSE, ProcessId);
   if ProcessHandle=Process then begin
  // blablabla
   end;
   Wd:=GetNextWindow(Wd,GW_HWNDNEXT);
   End;


где Process - хендл процеса чье окно надо найте!


 
Polas   (2006-05-08 22:35) [5]

хотя работает, дело просто в ProcessId, я эту переменную обьявил раньше. и она использовалась!!
Eraser, спосибо за помощь! %)


 
Eraser ©   (2006-05-08 23:09) [6]


> Polas   (08.05.06 22:35) [5]


> ProcessHandle := OpenProcess(PROCESS_TERMINATE, FALSE, ProcessId);

вот это лишнее. Нужно сравнивать идентификатор, а не дескриптор, хотя всё зависит от того, что значит переменная Process.


 
Polas   (2006-05-08 23:43) [7]

Process - хендл процеса чье окно надо найти!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
15-1155024974
Курдль
2006-08-08 12:16
2006.09.03
Требуется программа-объединитель для Excell


15-1155462612
Батыр
2006-08-13 13:50
2006.09.03
про диск


2-1155751167
serko
2006-08-16 21:59
2006.09.03
ServeкSocket и ClienSocket в Delphi 7!


3-1151045689
novill
2006-06-23 10:54
2006.09.03
Не могу из сервиса подключиться к IB


15-1154968330
Евгений К.
2006-08-07 20:32
2006.09.03
Стоит ли переходить на D2005???




   Наверх