XInputGetKeystroke
ゲームパッド入力イベントを取得します。
構文
DWORD XInputGetKeystroke(
DWORD dwUserIndex,
_Reserved_ dwReserved,
XINPUT_KEYSTROKE* pKeystroke
)
パラメーター
dwUserIndex _In_
型: DWORD
デバイスに関連付けられているサインインしたゲーマーのインデックス。 0 -XUSER_MAX_COUNT から 1 の範囲の値。XUSER_INDEX_ANY は、任意のユーザーから次に使用可能な入力イベントをフェッチするために使用されます。
dwReserved
型: Reserved
このパラメーターは使用されません。
pKeystroke _Out_
型: XINPUT_KEYSTROKE*
入力イベントを受け取る XINPUT_KEYSTROKE 構造体へのポインター。
戻り値
型: DWORD
- 関数が成功した場合、ERROR_SUCCESS が返されます。
- 新しいキーが押されていない場合、関数は ERROR_EMPTY を返します。
- コントローラーが接続されていないか、ユーザーがコントローラーをアクティブ化していない場合、関数は ERROR_DEVICE_NOT_CONNECTED を返します。下の「解説」のセクションを参照してください。
- 関数が失敗した場合、Winerror.h で定義されたエラー コードが返されます。
解説
ワイヤレス コントローラーは、システムの起動時にはアクティブとは見なされません。ワイヤレス コントローラーがアクティブ化される前に XInput 関数のいずれかを呼び出すと、その呼び出しによって ERROR_DEVICE_NOT_CONNECTED が返されます。 ゲーム タイトルは、リターン コードを調べて、この状況に対応できるように準備する必要があります。 有線コントローラーは、挿入時に自動的にアクティブ化されます。 ワイヤレス コントローラーは、ユーザーが START ボタンまたは Guide ボタンを押してコントローラーの電源を入れたときにアクティブ化されます。
XInput から GameInput に移植するコードによって、GetKeyStroke 関数が呼び出されない場合は、XINPUT_ON_GAMEINPUT_NO_XINPUTGETKEYSTROKE を定義することにより、XInput ラッパーのサイズを縮小できます。 詳細については、「XInput から GameInput への移植」を参照してください。
要件
ヘッダー: XInputOnGameInput.h
ライブラリ: xgameruntime.lib
サポートされているプラットフォーム: Xbox One ファミリー本体、Xbox Series 本体