共用方式為


INTERNAL_I8042_HOOK_KEYBOARD 結構 (ntdd8042.h)

I8042prt 會使用INTERNAL_I8042_HOOK_KEYBOARD來連接選擇性回呼例程,以補充鍵盤初始化和鍵盤 ISR。 回呼可由選擇性、廠商提供的上層篩選驅動程式提供。

語法

typedef struct _INTERNAL_I8042_HOOK_KEYBOARD {
  OUT PVOID                                  Context;
  OUT PI8042_KEYBOARD_INITIALIZATION_ROUTINE InitializationRoutine;
  OUT PI8042_KEYBOARD_ISR                    IsrRoutine;
  IN PI8042_ISR_WRITE_PORT                   IsrWritePort;
  IN PI8042_QUEUE_PACKET                     QueueKeyboardPacket;
  IN PVOID                                   CallContext;
} INTERNAL_I8042_HOOK_KEYBOARD, *PINTERNAL_I8042_HOOK_KEYBOARD;

成員

Context

如果為非 NULL,則為必須搭配 InitializationRoutineIsrRoutine 例程使用的內容指標。 否則, ContextNULL

InitializationRoutine

如果非 NULL,則為選擇性 PI8042_KEYBOARD_INITIALIZATION_ROUTINE回呼的指標。 I8042prt 會在重設裝置之後使用此回呼來初始化裝置。 否則, IntializatonRoutineNULL

IsrRoutine

如果不是 NULL,則為選擇性 PI8042_KEYBOARD_ISR 回呼的指標,可自定義 I8042prt 鍵盤 ISR 的作業。 否則, IsrRoutine NULL

IsrWritePort

系統提供的 PI8042_ISR_WRITE_PORT 回呼指標,它會將數據寫入鍵盤。

QueueKeyboardPacket

系統提供的 PI8042_QUEUE_PACKET 回呼指標,它會將鍵盤輸入數據封包排入佇列,以供鍵盤的 ISR 延遲過程調用處理。

CallContext

必須搭配 IsrWritePortQueueKeyboardPacket 例程使用的內容指標。

備註

此結構僅與 IOCTL_INTERNAL_I8042_HOOK_KEYBOARD 要求搭配使用。

內容初始化RoutineIsrRoutine 可由選擇性、廠商提供的上層篩選驅動程式提供。

IsrWritePortQueueKeyboardPacketCallContext 是由 I8042prt 提供。

規格需求

需求
標頭 ntdd8042.h (包含 Ntdd8042.h)

另請參閱

IOCTL_INTERNAL_I8042_HOOK_KEYBOARD

KbFilter_InitializationRoutine

KbFilter_IsrHook

PI8042_ISR_WRITE_PORT

PI8042_KEYBOARD_ISR

PI8042_QUEUE_PACKET