Установка таймера из хуковой процедуры
От: DreamTraveler  
Дата: 24.01.07 14:22
Оценка:
Прошу прощения за поднятие давно избитой темы, но прочитав горы документации так и не смог понять как сделать следующее:
Есть глобальный хук например на мышь. Как реализовать таймер (в самой dll), который например срабатывает если в течение TimeOut времени не было никаких сообщений от мышки? То есть в контексте текущего процесса задача тревиальна — известен ID таймера устанавливаем флаг и все тут понятно. Буду очень благодарен, если кто-нибудь разъяснит что делать с учетом отображения dll в контекст другого процесса — ведь тогда и ID установленного таймера и какие бы то ни было флаги теряют смысл (обнуляются грубо говоря). Заранее спасибо за любую информацию по этому поводу!
Re: Установка таймера из хуковой процедуры
От: Everon  
Дата: 24.01.07 16:35
Оценка:
Здравствуйте, DreamTraveler, Вы писали:

DT>...

Расшарить сегмент данных библиотеки. Далее всё как будто задача тривиальна
Re[2]: Установка таймера из хуковой процедуры
От: DreamTraveler  
Дата: 24.01.07 17:29
Оценка:
Здравствуйте, Everon, Вы писали:

E>Здравствуйте, DreamTraveler, Вы писали:


DT>>...

E>Расшарить сегмент данных библиотеки. Далее всё как будто задача тривиальна


Это единственное решение данной проблемы? Ведь насколько мне известно использование шаренных ресурсов не очень желательно. Или я ошибаюсь?

P.S. В любом случае спасибо за идею. Буду пробовать.
Re[3]: Установка таймера из хуковой процедуры
От: Everon  
Дата: 24.01.07 17:35
Оценка:
Здравствуйте, DreamTraveler, Вы писали:

DT>Это единственное решение данной проблемы?

Ну мне с ходу другого не представляется
DT>Ведь насколько мне известно использование шаренных ресурсов не очень желательно. Или я ошибаюсь?
Ничего подобного, очень даже полезно Кроме того, вам же не обязательно все данные делать разделяемыми. Достаточно создать ещё один сегмент, и поместить в него переменную-флаг, которая будет устанавливаться/сбрасываться в хук-процедуре, а анализироваться в таймере, тикающем уже в вашей программе...
Re[4]: Установка таймера из хуковой процедуры
От: NeuroVirus Россия  
Дата: 25.01.07 08:56
Оценка:
Здравствуйте, Everon, Вы писали:

E>Здравствуйте, DreamTraveler, Вы писали:


DT>>Это единственное решение данной проблемы?

E>Ну мне с ходу другого не представляется
DT>>Ведь насколько мне известно использование шаренных ресурсов не очень желательно. Или я ошибаюсь?
E>Ничего подобного, очень даже полезно Кроме того, вам же не обязательно все данные делать разделяемыми. Достаточно создать ещё один сегмент, и поместить в него переменную-флаг, которая будет устанавливаться/сбрасываться в хук-процедуре, а анализироваться в таймере, тикающем уже в вашей программе...

В общем — делается главная программа, которая и занимается основной логикой, а из хук-длл-ек как-то в нее сообщается, шаред секция это как-то не очень, наверное лучче какойнить IPC (мапированый расшареный файл, оконные сообщения, итп)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.