Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.19;
Скачать: CL | DM;

Вниз

Hook на мышь и клавиатуру только в своем приложении   Найти похожие ветки 

 
Vladimir   (2007-12-19 09:57) [0]

всем доброго дня!
задача в том, чтобы отслеживать факт нажатия любой кнопки мыши в дочернем окне приложения (дабы сделать вывод, что пользователь работаетс этим окном). И если в течение 10 минут пользователь не предпринимает никаких действий - закрыть окно.
ставлю локальный хук при показе этого окна:
OnFormShow:
CurMouseHook:=SetWindowsHookEx(WH_MOUSE, @MouseProc, HInstance, 0);

function MouseProc(Code: Integer; wParam: LongInt; lParam: LongInt): LongInt; stdcall;
begin
case wParam of
 WM_LBUTTONDOWN, WM_RBUTTONDOWN: begin
   RecreateTimerInterval;
 end;
end;
Result:=CallNextHookEx(CurMouseHook, Code, wParam, lParam);
end;


проблема в том, что хук на мышь (как, впрочем, и на клавиатуру) срабатывает только один раз.


 
Сергей М. ©   (2007-12-19 10:11) [1]


> ставлю локальный хук


Это не локальный хук.

Да и нафих не нужен хук для решения такой простой задачи.

Лови Application.OnMessage, фильтруй сообщения мыши и клавы, анализируй окно-приемник сообщения, взводи соответствующий этому окну 10-минутный таймер. Через 10 минут таймер сообщит, что время истекло, это и будет сигналом к закрытию окна.


 
Vladimir   (2007-12-19 11:06) [2]

этот вариант я уже использовал... просто хотелось через хуки.
все равно спасибо. )
проблема была не в хуке, а в обновлении интервала ожидания.


 
MetalFan ©   (2007-12-20 13:00) [3]


> И если в течение 10 минут пользователь не предпринимает
> никаких действий - закрыть окно.

копай в сторону полезной функции GetLastInputInfo.

> The GetLastInputInfo function retrieves the time of the
> last input event.



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

Текущий архив: 2008.10.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
2-1221401730
Виталион
2008-09-14 18:15
2008.10.19
Запустить приложение и считать информацию


2-1221206822
N77
2008-09-12 12:07
2008.10.19
Next, Prior (SQL)


2-1221125658
MdbPero
2008-09-11 13:34
2008.10.19
Использование Microsoft Agent


15-1219916607
Медвежонок Пятачок
2008-08-28 13:43
2008.10.19
Сервер приложений ПО "Контакт"


2-1221137985
<Evil>
2008-09-11 16:59
2008.10.19
Глюк или???