IOCTL_INTERNAL_MOUSE_CONNECT IOCTL (kbdmou.h)
IOCTL_INTERNAL_MOUSE_CONNECT请求将 Mouclass 服务连接到鼠标设备。 Mouclass 在打开鼠标设备之前,将此请求发送到设备堆栈。
Moufiltr 收到鼠标连接请求后,按以下方式筛选请求:
- 保存传递给 Moufiltr 的 CONNECT_DATA (Mouclass) 结构的副本
- 将自己的连接信息替换为类驱动程序连接信息
- 在设备堆栈中向下发送IOCTL_INTERNAL_MOUSE_CONNECT请求
Moufiltr 为筛选器服务回调例程提供了一个模板,该例程可以补充 MouseClassServiceCallback(Mouclass 服务回调例程)的操作。 筛选器服务回调可以筛选从设备输入缓冲区传输到类驱动程序数据队列的输入数据。
有关 Mouclass 服务连接的详细信息,请参阅以下主题:
主要代码
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 成员设置为以下值之一:
STATUS_INVALID_PARAMETER
Parameters.DeviceIoControl.InputBufferLength 小于CONNECT_DATA结构的大小(以字节为单位)。
STATUS_SHARING_VIOLATION
moufiltr 已连接 (筛选器驱动程序仅支持一个连接请求) 。
要求
要求 | 值 |
---|---|
Header | kbdmou.h (包括 Kbdmou.h) |