IOCTL_INTERNAL_MOUSE_CONNECT IOCTL (kbdmou.h)

Запрос IOCTL_INTERNAL_MOUSE_CONNECT подключает службу Mouclass к устройству мыши. Mouclass отправляет этот запрос в стек устройств перед открытием устройства мыши.

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

  1. Сохраняет копию структуры CONNECT_DATA (Mouclass), переданную в Moufiltr
  2. Заменяет сведения о подключении драйвера класса собственными сведениями о подключении
  3. Отправляет запрос IOCTL_INTERNAL_MOUSE_CONNECT в стек устройств.
Если запрос не выполнен, Moufiltr завершает запрос с соответствующим состоянием ошибки.

Moufiltr предоставляет шаблон для процедуры обратного вызова службы фильтрации, которая может дополнять операцию MouseClassServiceCallback, подпрограммы обратного вызова службы Mouclass. Обратный вызов службы фильтрации может фильтровать входные данные, передаваемые из входного буфера устройства в очередь данных драйвера класса.

Дополнительные сведения о подключении службы Mouclass см. в следующих разделах:

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

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

Основной код

IRP_MJ_INTERNAL_DEVICE_CONTROL

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

Элемент Parameters.DeviceIoControl.Type3InputBuffer указывает на структуру CONNECT_DATA, выделенную и заданную Mouclass.

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

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

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

Элемент Parameters.DeviceIoControl.Type3InputBuffer указывает на CONNECT_DATA структуру, заданную Moufiltr.

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

Размер структуры CONNECT_DATA.

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

Элемент Information имеет нулевое значение.

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

STATUS_INVALID_PARAMETER

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

STATUS_SHARING_VIOLATION

Moufiltr уже подключен (драйвер фильтра поддерживает только один запрос на подключение).

Требования

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

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

CONNECT_DATA (Mouclass)

MouseClassServiceCallback