Вверх ↑
Ответов: 163
Рейтинг: 33
#1: 2020-04-02 21:48:51 ЛС | профиль | цитата
Кстати, с этим нововведением в Windows7 появляется еще одна не очевидная проблема. На самом деле таймаут распространяется не на отдельный обработчик хука, а на все обработчики, которые были зарегистрированы на данный тип хука. В результате может возникнуть следующая ситуация. Пришло событие, система вызывает первый обработчик в цепочке. Допустим это наша программа. Она быстренько делает что задумано и вызывает CallNextHookEx. Допустим следующий в цепочке обработчик находится в чужой программе, и он не укладывается в таймаут. Система тихо снимат первый хук в цепочке (то есть наш). Получается что мы пострадали из-за нерасторопности чужой программы.
карма: 3

0