IOCTL_INTERNAL_I8042_HOOK_MOUSE IOCTL (ntdd8042.h)

Запрос IOCTL_INTERNAL_I8042_HOOK_MOUSE добавляет подпрограмму обратного вызова ISR в isR мыши I8042prt. Обратный вызов ISR необязателен и предоставляется драйвером фильтра мыши верхнего уровня.

I8042prt отправляет этот запрос после получения запроса IOCTL_INTERNAL_MOUSE_CONNECT . I8042prt отправляет синхронный запрос IOCTL_INTERNAL_I8042_HOOK_MOUSE в верхнюю часть стека устройств мыши.

После того как Moufiltr получит запрос на перехватчик мыши, он фильтрует запрос следующим образом:

  • Сохраняет сведения верхнего уровня, передаваемые в Moufiltr, включая контекст объекта устройства верхнего уровня и указатель на обратный вызов ISR.
  • Заменяет сведения верхнего уровня собственными
  • Сохраняет контекст I8042prt и указатели на обратные вызовы, которые могут использоваться обратными вызовами Moufiltr ISR.
Дополнительные сведения об этом запросе и обратных вызовах см. в следующих разделах:

Процедуры обратного вызова I8042prt

Процедуры обратного вызова Moufiltr

Основной код

IRP_MJ_INTERNAL_DEVICE_CONTROL

Входной буфер

Член Parameters.DeviceIoControl.InputBufferLength имеет значение, большее или равное размеру в байтах структуры INTERNAL_I8042_HOOK_MOUSE .

Parameters.DeviceIoControl.Type3InputBuffer указывает на структуру INTERNAL_I8042_HOOK_MOUSE, которая изначально выделяется и задается I8042prt.

Длина входного буфера

Parameters.DeviceIoControl.Type3InputBuffer указывает на структуру INTERNAL_I8042_HOOK_MOUSE, которая изначально выделяется и задается I8042prt.

Выходной буфер

None

Длина выходного буфера

None

Блок состояния

Для элемента Status задано одно из следующих значений:

STATUS_INVALID_PARAMETER

Parameters.DeviceIoControl.InputBufferLength меньше размера структуры INTERNAL_I8042_HOOK_MOUSE (в байтах).

STATUS_SUCCESS

Запрос успешно выполнен.

Требования

Требование Значение
Заголовок ntdd8042.h (включая Ntdd8042.h)

См. также раздел

INTERNAL_I8042_HOOK_MOUSE

IOCTL_INTERNAL_MOUSE_CONNECT