PI8042_MOUSE_ISR回调函数 (ntdd8042.h)
PI8042_MOUSE_ISR类型的回调例程自定义 I8042prt 鼠标 ISR 的操作。
语法
PI8042_MOUSE_ISR Pi8042MouseIsr;
BOOLEAN Pi8042MouseIsr(
[in] PVOID IsrContext,
[in] PMOUSE_INPUT_DATA CurrentInput,
[in] POUTPUT_PACKET CurrentOutput,
[in] UCHAR StatusByte,
[in] PUCHAR Byte,
[in, out] PBOOLEAN ContinueProcessing,
[in] PMOUSE_STATE MouseState,
[in] PMOUSE_RESET_SUBSTATE ResetSubState
)
{...}
参数
[in] IsrContext
指向提供此回调的驱动程序的筛选器设备对象的指针。
[in] CurrentInput
指向 ISR 正在构造 的输入MOUSE_INPUT_DATA 结构的指针。
[in] CurrentOutput
指向 OUTPUT_PACKET 结构的指针,该结构指定要写入硬件设备的字节数组。
[in] StatusByte
指定发生中断时从 I/O 端口 60 读取的状态字节。
[in] Byte
指定发生中断时从 I/O 端口 64 读取的数据字节。
[in, out] ContinueProcessing
指定如果 为 TRUE,则在此回调完成后,I8042prt 鼠标 ISR 中的处理将继续。 否则,处理不会继续。
[in] MouseState
指向 MOUSE_STATE 枚举值的指针,该值标识鼠标输入的状态。
[in] ResetSubState
指向MOUSE_RESET_SUBSTATE枚举值的指针,该值标识鼠标重置子状态。 请参阅“备注”部分。
返回值
如果 I8042prt 鼠标 ISR 继续,则PI8042_MOUSE_ISR回调返回 TRUE ;否则返回 FALSE。
注解
如果 I8042prt 鼠标 ISR 的默认操作足够,则不需要PI8042_MOUSE_ISR回调。
上层键盘筛选器驱动程序可以提供鼠标 ISR 回调。 I8042prt 鼠标 ISR 验证中断后,它会调用鼠标 ISR 回调。
为了重置鼠标,I8042prt 会经历一系列操作子状态,其中每个子状态都由MOUSE_RESET_SUBSTATE枚举值标识。 有关 I8042prt 如何重置鼠标以及相应的鼠标重置子状态的详细信息,请参阅 ntdd8042.h 中MOUSE_RESET_SUBSTATE的文档。
PI8042_MOUSE_ISR回调在 I8042prt 鼠标 ISR 的 IRQL 的内核模式下运行。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | ntdd8042.h (包括 Ntdd8042.h) |
IRQL | 请参见“备注”部分。 |