Функция CallMsgFilterA (winuser.h)
Передает указанный код сообщения и перехватчика в процедуры перехватчика, связанные с WH_SYSMSGFILTER и WH_MSGFILTER перехватчиками. Процедура перехватчика WH_SYSMSGFILTER или WH_MSGFILTER — это определяемая приложением функция обратного вызова, которая проверяет и при необходимости изменяет сообщения для диалогового окна, окна сообщения, меню или полосы прокрутки.
Синтаксис
BOOL CallMsgFilterA(
[in] LPMSG lpMsg,
[in] int nCode
);
Параметры
[in] lpMsg
Тип: LPMSG
Указатель на структуру MSG , содержащую сообщение для передачи в процедуры перехватчика.
[in] nCode
Тип: int
Код, определяемый приложением, используемый процедурой перехватчика для определения способа обработки сообщения. Код не должен иметь то же значение, что и системные коды перехватчиков (MSGF_ и HC_), связанные с WH_SYSMSGFILTER и WH_MSGFILTER перехватчиками.
Возвращаемое значение
Тип: BOOL
Если приложение должно обработать сообщение дальше, возвращаемое значение равно нулю.
Если приложение не должно обрабатывать сообщение дальше, возвращается ненулевое значение.
Комментарии
Система вызывает CallMsgFilter , чтобы позволить приложениям проверять поток сообщений и управлять ими во время внутренней обработки диалоговых окон, окон сообщений, меню и полос прокрутки или при активации пользователем другого окна с помощью сочетания клавиш ALT+TAB.
Установите эту процедуру перехватчика с помощью функции SetWindowsHookEx .
Примеры
Пример см. в разделе WH_MSGFILTER и WH_SYSMSGFILTER Перехватчики.
Примечание
Заголовок winuser.h определяет CallMsgFilter как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-message-l1-1-0 (появилось в Windows 8) |
См. также раздел
Основные понятия
Справочные материалы