IOCTL_INTERNAL_MOUSE_CONNECT IOCTL (kbdmou.h)

IOCTL_INTERNAL_MOUSE_CONNECT请求将 Mouclass 服务连接到鼠标设备。 在打开鼠标设备之前,Mouclass 会将此请求发送到设备堆栈。

在 Moufiltr 收到鼠标连接请求后,它会按以下方式筛选请求:

  1. 保存传递给穆菲尔的 CONNECT_DATA(Mouclass) 结构的副本
  2. 将自己的连接信息替换为类驱动程序连接信息
  3. 将IOCTL_INTERNAL_MOUSE_CONNECT请求向下发送设备堆栈
如果请求未成功,则 Moufiltr 会以适当的错误状态完成请求。

Moufiltr 为筛选器服务回调例程提供了一个模板,该例程可以补充 MouseClassServiceCallback(Mouclass 服务回调例程)的作。 筛选器服务回调可以筛选从设备输入缓冲区传输到类驱动程序数据队列的输入数据。

有关 Mouclass 服务连接的详细信息,请参阅以下主题:

I8042prt 回调例程

穆菲尔回调例程

主要代码

IRP_MJ_INTERNAL_DEVICE_CONTROL

输入缓冲区

Parameters.DeviceIoControl.Type3InputBuffer 成员指向由 Mouclass 分配和设置的CONNECT_DATA结构。

输入缓冲区长度

Parameters.DeviceIoControl.InputBufferLength 成员设置为大于或等于CONNECT_DATA结构的大小(以字节为单位)的值。

输出缓冲区

Parameters.DeviceIoControl.Type3InputBuffer 成员指向由 Moufiltr 设置的CONNECT_DATA结构。

输出缓冲区长度

CONNECT_DATA结构的大小。

状态块

信息 成员设置为零。

状态 成员设置为以下值之一:

STATUS_INVALID_PARAMETER

Parameters.DeviceIoControl.InputBufferLength 小于CONNECT_DATA结构的大小(以字节为单位)。

STATUS_SHARING_VIOLATION

Moufiltr 已连接(筛选器驱动程序仅支持一个连接请求)。

要求

要求 价值
标头 kbdmou.h (包括 Kbdmou.h)

另请参阅

CONNECT_DATA(穆类)

MouseClassServiceCallback