Функция DebugProc


Процедура фильтра (hook) DebugProc - это определяемая программой или определяемая библиотекой функция повторного вызова, используемая функцией SetWindowsHookEx. Система вызывает эту функцию перед вызовом процедуры, связанной с каким-либо типом фильтра (hook). Система передает информацию о фильтре (hook) в вызываемую  процедуру  DebugProc, которая проверяет информацию и выясняет, давать ли возможность фильтру (hook) быть вызванным.

Тип HOOKPROC определяет указатель на эту функция повторного вызова. DebugProc - это имя - заместитель для определяемого программой или определяемого библиотекой имени функции.

Синтаксис

LRESULT CALLBACK DebugProc(      
    int nCode,
    WPARAM wParam,
    LPARAM lParam
);

Параметры

nCode

[in] Устанавливает, должна ли процедура фильтра (hook) обрабатывать сообщение. Если nCode - HC_ACTION, процедура фильтра (hook) должна обработать сообщение. Если nCode - меньше чем нуль, процедура фильтра (hook) должна передать сообщение в функцию CallNextHookEx без дальнейшей обработки и должна возвратить значение, возвращенное CallNextHookEx.

wParam

[in] Устанавливает тип фильтра (hook), который собираются вызвать. Этим параметром может быть одно из ниже перечисленных значений.

 

Значение Предназначение
WH_CALLWNDPROC Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями, отправленными оконной процедуре. Дополнительную информацию, см. в описании процедуры фильтра (hook) CallWndProc
WH_CALLWNDPROCRET Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями, которые были только что обработаны оконной процедурой. Дополнительную информацию, см. в описании процедуры фильтра (hook) CallWndRetProc
WH_CBT Устанавливает процедуру фильтра (hook), которая получает уведомления, полезные для приложений компьютерной тренировки (CBT). Дополнительную информацию, см. в описании процедуры фильтра (hook) CBTProc.
WH_DEBUG Устанавливает процедуру фильтра (hook), полезную для того, чтобы делать отладку других процедур фильтра (hook). Дополнительную информацию, см. в описании процедуры фильтра (hook) DebugProc.
WH_GETMESSAGE Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями, отправленными в очередь сообщений. Дополнительную информацию, см. в описании процедуры фильтра (hook) GetMsgProc
WH_JOURNALPLAYBACK Устанавливает процедуру фильтра (hook), которая посылает сообщения, предварительно зарегистрированные процедурой фильтра (hook) WH_JOURNALRECORD. Дополнительную информацию, см. в описании процедуры фильтра (hook) JournalPlaybackProc
WH_JOURNALRECORD Устанавливает процедуру фильтра (hook), которая фиксирует сообщения о вводе данных, помещенных в системную очередь сообщений. Этот фильтр (hook) полезен для того, чтобы сделать запись макроопределения. Дополнительную информацию, см. в описании процедуры фильтра (hook) JournalRecordProc
WH_KEYBOARD Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями нажатия клавиши. Дополнительную информацию, см. в описании процедуры фильтра (hook) KeyboardProc
WH_MOUSE Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями мыши. Дополнительную информацию, см. в  описании процедуры фильтра (hook) MouseProc
WH_MSGFILTER Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями, произведенными в результате события ввода данных в диалоговом окне, окне сообщения, меню или линейке прокрутки. Процедура фильтра (hook) осуществляет текущий контроль за этими сообщениями только для прикладной программы, которая устанавливала процедуру фильтра (hook). Дополнительную информацию, см. в описании процедуры фильтра (hook)  MessageProc
WH_SHELL Устанавливает процедуру фильтра (hook), которая получает уведомления, полезные в приложении Shell. Дополнительную информацию, см. в описании процедуры фильтра (hook) ShellProc и статье о фильтре (hook) WH_SHELL
WH_SYSMSGFILTER Устанавливает процедуру фильтра (hook), которая осуществляет текущий контроль за сообщениями, произведенными в результате события ввода данных в диалоговом окне, окне сообщения, меню или линейке прокрутки. Процедура фильтра (hook) осуществляет текущий контроль за этими сообщениями для всех приложений в системе. Дополнительную информацию, см. в описании процедуры фильтра (hook) SysMsgProc

lParam

[in] Указатель на структуру DEBUGHOOKINFO, которая содержит параметры, передаваемые целевой процедуре фильтра (hook).

Возвращаемое значение

Чтобы не дать системе вызывать фильтр (hook), процедура фильтра (hook) должна возвратить ненулевое значение. В противном случае, процедура фильтра (hook) должна вызвать CallNextHookEx.

Замечания

Приложение устанавливает эту процедуру фильтра (hook), определяя тип фильтра (hook) WH_DEBUG и указатель на процедуру фильтра (hook) при вызове функции SetWindowsHookEx.

Смотри также

Обзор Фильтр-процедуры (hooks) событий, Функции, используемые фильтрами (hook), CallNextHookEx, CallWndProcCallWndRetProc, CBTProc, DEBUGHOOKINFO, GetMsgProc, JournalPlaybackProcJournalRecordProcKeyboardProc, MessageProc, MouseProc, SetWindowsHookEx, ShellProc,   SysMsgProc

Размещение и совместимость DebugProc

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

Нет

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz