次の方法で共有


IDirectInput8::EnumDevicesBySemantics

アプリケーション指定のアクション マップと最もよく一致するデバイスを列挙します。

HRESULT 
EnumDevicesBySemantics(
  LPCTSTR ptszUserName,
  LPDIACTIONFORMAT lpdiActionFormat,
  LPDIENUMDEVICESBYSEMANTICSCB lpCallback,
  LPVOID pvRef,
  DWORD dwFlags
);

パラメータ

  • ptszUserName
    現在のユーザーを識別する文字列。また、NULL はシステムにログオンしているユーザーを指定します。デバイスを列挙する際に、ユーザー名が考慮されます。ユーザー マッピングのあるデバイスが、ユーザー マッピングのないデバイスよりも優先されます。デフォルトでは、他のユーザーによって使用されているデバイスは、このユーザーに対しては列挙されません。
  • lpdiActionFormat
    アクション マップを指定する DIACTIONFORMAT 構造体のアドレス。このアクション マップに適合するデバイスが列挙されます。
  • lpCallback
    列挙されたそれぞれのデバイスごとに 1 回呼び出されるコールバック関数のアドレス。「DIEnumDevicesBySemanticsCallback」を参照してください。
  • pvRef
    列挙コールバックが呼び出されるたびにそのコールバックに渡される、アプリケーション定義の 32 ビット値。
  • dwFlags
    列挙の範囲を指定するフラグ値。このパラメーターには、次の値 (複数可) を設定できます。
    • DIEDBSFL_ATTACHEDONLY
      接続されているインストール済みデバイスのみが列挙されます。
    • DIEDBSFL_AVAILABLEDEVICES
      所有されていない、インストール済みデバイスのみが列挙されます。
    • DIEDBSFL_FORCEFEEDBACK
      フォース フィードバックをサポートするデバイスのみが列挙されます。
    • DIEDBSFL_MULTIMICEKEYBOARDS
      2 次 (非システム) キーボードとマウス デバイスのみ。
    • DIEDBSFL_NONGAMINGDEVICES
      ゲーミング デバイスとしての使用を主な目的としていない、HID 準拠のデバイスのみ。USB スピーカーや一部のキーボードにあるマルチメディア ボタンなどのデバイスが、この値に当てはまります。
    • DIEDBSFL_THISUSER
      ptszUserName によって識別されるユーザーに対するインストール済みデバイスすべて、および所有されていないデバイスすべてが列挙されます。
    • DIEDBSFL_VALID
      DIEDBSFL_VALID も Dinput.h に定義されていますが、アプリケーションによって使用されることはありません。

戻り値

メソッドが正常に実行された場合、戻り値は DI_OK です。メソッドが失敗した場合、戻り値は次のいずれかのエラー値です。DIERR_INVALIDPARAM、DIERR_NOTINITIALIZED

解説 

キーボードとマウスは最後に列挙されます。

    DirectInput がデバイスを列挙する順序は、常に同じとは限りません。

要件

ヘッダー: Dinput.h 宣言

関連項目

IDirectInput8::EnumDevices