Win32 API. Hooks (хуки) - Функция GetMsgProc
ОГЛАВЛЕНИЕ
Функция GetMsgProc
(ПроцедураПолученияСообщения)
Подключаемая процедура GetMsgProc - определяемая программой или определенная библиотекой функция повторного вызова, которую система вызывает всякий раз, когда функция GetMessage извлекает сообщение из очереди сообщений прикладной программы. Перед передачей извлеченного сообщения в оконную процедуру назначения, система передает сообщение в подключаемую процедуру.
Синтаксис
LRESULT CALLBACK GetMsgProc
(
int code, // код hook-точки
WPARAM wParam, // флажок удаления
LPARAM lParam // адрес структуры с сообщением
);
Параметры
code
Определяет, должна ли подключаемая процедура обрабатывать сообщение. Если code - HC_ACTION, фильтр - процедура должна обработать сообщение. Если code - меньше чем нуль, фильтр - процедура должна передать сообщение в функцию CallNextHookEx без дальнейшей обработки и должна возвратить значение, возвращенное CallNextHookEx.
wParam
Определяет, было ли сообщение удалено из очереди. Этот параметр может быть одним из следующих значений:
- PM_NOREMOVE - Определяет, что сообщение не было удалено из очереди. (Прикладная программа вызвала функцию PeekMessage, установив флажок PM_NOREMOVE.)
- PM_REMOVE - Определяет, что сообщение было удалено из очереди. (Прикладная программа вызвала GetMessage, или она вызвала функцию PeekMessage, установив флажок PM_REMOVE.)
lParam
Указывает на структуру MSG, которая содержит подробности о сообщении.
Возвращаемые значения
Возвращаемое значение должно быть ноль.
Замечания
Подключаемая процедура GetMsgProc может исследовать или изменить сообщение. После того, как фильтр - процедура возвратит управление системе, функция GetMessage возвращает значение сообщения, вместе с любыми изменениями, в прикладную программу, которая первоначально вызвала её.
Прикладная программа устанавливает эту подключаемую процедуру, определяя тип hook-точки как WH_GETMESSAGE и адрес подключаемой процедуры при вызове функции SetWindowsHookEx.
GetMsgProc - метка - заместитель для определяемого программой или определенного библиотекой имени функции.
Смотри также
CallNextHookEx, GetMessage, MSG, PeekMessage, SetWindowsHookEx
Размещение и совместимость GetMsgProc
Windows NT Да
Win95 Да
Win32s Да
Импортируемая библиотека Определяется пользователем
Заголовочный файл winuser.h
Unicode Нет
Замечания по платформе HOOKPROC