次の方法で共有


INTERNAL_I8042_HOOK_KEYBOARD 構造体 (ntdd8042.h)

INTERNAL_I8042_HOOK_KEYBOARDは、キーボードの初期化とキーボード ISR を補完するオプションのコールバック ルーチンを接続するために、I8042prt によって使用されます。 コールバックは、オプションのベンダー指定の上位レベルのフィルター ドライバーによって提供できます。

構文

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

InitializationRoutine ルーチンと IsrRoutine ルーチンで使用する必要があるコンテキストへのポインター (NULL 以外の場合)。 それ以外の場合、 ContextNULL です

InitializationRoutine

NULL 以外の場合は、オプションのPI8042_KEYBOARD_INITIALIZATION_ROUTINEコールバックへのポインター。 I8042prt では、このコールバックを使用して、デバイスのリセット後にデバイスを初期化します。 それ以外の場合、 IntializatonRoutineNULL です

IsrRoutine

I8042prt キーボード ISR の操作をカスタマイズするオプションのPI8042_KEYBOARD_ISRコールバックへのポインター (NULL 以外の場合)。 それ以外の場合、 IsrRoutine NULL です

IsrWritePort

キーボードにデータを書き込む、システム提供 のPI8042_ISR_WRITE_PORT コールバックへのポインター。

QueueKeyboardPacket

システム提供の PI8042_QUEUE_PACKET コールバックへのポインター。これは、キーボードの ISR 遅延プロシージャ呼び出しによる処理のためにキーボード入力データ パケットをキューに入れます。

CallContext

IsrWritePort ルーチンと QueueKeyboardPacket ルーチンで使用する必要があるコンテキストへのポインター。

注釈

この構造体は、 IOCTL_INTERNAL_I8042_HOOK_KEYBOARD 要求でのみ使用されます。

ContextInitializationRoutineおよび IsrRoutine は、ベンダーが提供するオプションの上位レベルのフィルター ドライバーによって提供できます。

IsrWritePortQueueKeyboardPacketおよび CallContext は I8042prt によって提供されます。

要件

要件
Header ntdd8042.h (Ntddd8042.h を含む)

こちらもご覧ください

IOCTL_INTERNAL_I8042_HOOK_KEYBOARD

KbFilter_InitializationRoutine

KbFilter_IsrHook

PI8042_ISR_WRITE_PORT

PI8042_KEYBOARD_ISR

PI8042_QUEUE_PACKET