KEYBDINPUT 構造体 (winuser.h)
シミュレートされたキーボード イベントに関する情報が含まれます。
構文
typedef struct tagKEYBDINPUT {
WORD wVk;
WORD wScan;
DWORD dwFlags;
DWORD time;
ULONG_PTR dwExtraInfo;
} KEYBDINPUT, *PKEYBDINPUT, *LPKEYBDINPUT;
メンバー
wVk
種類: WORD
仮想キー コード。 コードは、1 ~ 254 の範囲の値である必要があります。 dwFlags メンバーがKEYEVENTF_UNICODEを指定する場合、wVk は 0 である必要があります。
wScan
種類: WORD
キーのハードウェア スキャン コード。 dwFlags でKEYEVENTF_UNICODEが指定されている場合、wScan はフォアグラウンド アプリケーションに送信される Unicode 文字を指定します。
dwFlags
型: DWORD
キーストロークのさまざまな側面を指定します。 このメンバーには、次の値の特定の組み合わせを指定できます。
値 | 意味 |
---|---|
|
指定した場合、 wScan スキャン コードは 2 バイトのシーケンスで構成され、最初のバイトの値は 0xE0。 詳細については、「 拡張キー フラグ 」を参照してください。 |
|
指定した場合、キーは解放されます。 指定しない場合、キーが押されています。 |
|
指定した場合、 wScan は キーを識別し、 wVk は無視されます。 |
|
指定した場合、システムは VK_PACKET キーストロークを合成します。 wVk パラメーターは 0 である必要があります。 このフラグは、 KEYEVENTF_KEYUP フラグとのみ組み合わせることができます。 詳細については、「解説」を参照してください。 |
time
型: DWORD
イベントのタイム スタンプ (ミリ秒単位)。 このパラメーターが 0 の場合、システムは独自のタイム スタンプを提供します。
dwExtraInfo
種類: ULONG_PTR
キーストロークに関連付けられた追加の値。 この情報を取得するには、 GetMessageExtraInfo 関数を使用します。
注釈
INPUT_KEYBOARD では、 KEYEVENTF_UNICODE フラグを使用してテキスト入力であるかのように、手書き認識や音声認識などの非キーボード入力メソッドがサポートされています。 KEYEVENTF_UNICODEが指定されている場合、SendInput は wParam がVK_PACKETと等しいWM_KEYDOWNまたはWM_KEYUPメッセージをフォアグラウンド スレッドのメッセージ キューに送信します。 GetMessage または PeekMessage がこのメッセージを取得すると、TranslateMessage にメッセージを渡すと、wScan で最初に指定された Unicode 文字を含むWM_CHARメッセージが投稿されます。 この Unicode 文字は、ANSI ウィンドウにポストされると、適切な ANSI 値に自動的に変換されます。
KEYEVENTF_SCANCODE フラグを設定して、スキャン コードの観点からキーボード入力を定義します。 これは、現在使用されているキーボードに関係なく、物理的なキーストロークをシミュレートする場合に便利です。 スキャン コードが拡張キーの場合は、 KEYEVENTF_EXTENDEDKEY フラグを渡すこともできます。 キーの仮想キーの値は、現在のキーボード レイアウトや他のキーが押された内容によって変わる場合がありますが、スキャン コードは常に同じになります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | winuser.h (Windows.h を含む) |