![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
WH_KEYBOARD & Chil Window [D7, Win95/98, WinXP]
Wiz@rd © (2004-04-29 13:07:00)В этот хуке мне нужно получить хэндл окна в котором эти нажатия происходят, но надо окно не верхнего уровня, а то в котром они действительно происходят - например в Edit. Т.е. как лучше сделать: я делаю так
W := GetActiveWindow;
W := GetWindow (W, GW_CHILD);
или лучше GetFocus?
и вообще как перечислить дочерние окна с помощью GetWindow (First, Next...)?
Wiz@rd (2004-04-29 18:58:00) [1]А кейлогер то-тут каким боком? Просто WH_KEYBOARD для отлова окон во время нажатия кнопок - эдакий он кейпресс - а кейлогер тут не нужен....
Р.S. Кейлогер я давно уже написал :)
BiN (2004-04-29 17:11:00) [2]Опять кейлоггеры - скучно....
Wiz@rd (2004-04-29 17:06:00) [3]Да знаю я это:
Во напрмер Wnd - окно родитель то так ли будут находится его дочерние окна (EnumChildWindows - suxx, ИМХО некоторые проги его перехватывают):
W := GetWindow (Wnd, GW_HWNDFIRST);
while W > 0 do
begin
//some operations...
W := GetWindow (Wnd, GW_HWNDNEXT);
end;
Так или что-то не так?
Дмитрий (2004-04-29 15:06:00) [4]HWND GetNextWindow(
HWND hWnd, // handle of current window
UINT wCmd // direction flag
);
посмотри еще FindWindowEx и EnumChildWindows