Приоритет глобального хука

Устанавливаю глобальный хук WH_KEYBOARD_LL. После этого другое приложение устанавливает аналогичный хук. Теперь все сообщения клавиатуры сначала попадают в чужой хук, а потом (если эму захочется) он передаст их мне вызовом CallNextHookEx (...). Соответственно для того чтоб мой хук опять был первым в очереди хуков, мне нужно его переустановить. Вопрос:

1. Можно ли получить уведомление об установке определенного типа хуков в системе? (идеальный вариант, ибо тогда по уведомлению переустанавливаю свой хук и я опять сверху).

2. Если нет — то можно ли получить информацию о приоритете моего хука в системе или хотя бы установлен ли более приоритетный хук? (вариант похуже так как надо крутить поток проверяющий с определенным интервалом приоритет моего хука и в случае необходимости — переустанавливающий его + плюс есть возможность пропустить какое-либо сообщение)

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Ну что за эгоизм! По-моему, то что Вы хотите, Роман, категорически не правильно. В многозадачной Windows нет разумного способа гарантировать, что именно Ваша программа является «самой какой-то» фактически ни для какого свойства. В blogs.msdn.com/.../07/426294.aspx один из разработчиков Windows предлагает простой мысленный эксперимент, объясняющий, почему это нереально: «А что если две разных программы захотят достичь этого? ». В Windows, как и в других многозадачных системах, нужно жить в мире с другими программами и надеяться, что они будут вести себя аналогично.

Підписатись на коментарі