Фильтр WH_HARDWARE
Фильтр WH_HARDWARE предназначен для перехвата сообщений, поступающих от нестандартных устройств ввода, таких, как устройства перьевого ввода (клавиатура и мышь - это стандартные устройства ввода). Функция фильтра должна находиться в DLL-библиотеке.
Приведем прототип функции фильтра типа WH_HARDWARE:
LRESULT CALLBACK HardwareProc( int code, // код действия WPARAM wParam, // не определено LPARAM lParam); // адрес структуры HARDWAREHOOKSTRUCT
Структура HARDWAREHOOKSTRUCT описана в файле windows.h:
typedef struct tagHARDWAREHOOKSTRUCT { HWND hWnd; UINT wMessage; WPARAM wParam; LPARAM lParam; } HARDWAREHOOKSTRUCT;
В этой структуре поле hWnd содержит идентификатор окна, которому предназначено сообщение, поле wMessage содержит код сообщения, поля wParam и lParam содержат дополнительную информацию, зависящую от кода сообщения.