Microsoft DirectX 8.0 (C++)

IDirectInput8::EnumDevices

利用可能なデバイスを列挙する。

HRESULT EnumDevices(
  DWORD dwDevType,              
  LPDIENUMCALLBACK lpCallback,  
  LPVOID pvRef,                 
  DWORD dwFlags                 
);

パラメータ

dwDevType
デバイス タイプのフィルタ。

デバイスの型を指定してその列挙を制限するには、このパラメータに DI8DEVTYPE_* 値を設定する。「DIDEVICEINSTANCE」を参照すること。

デバイスのクラスを列挙するには、次のいずれかの値を使用する。

DI8DEVCLASS_ALL
すべてのデバイス。
DI8DEVCLASS_DEVICE
ほかのクラスに分類されないすべてのデバイス。
DI8DEVCLASS_GAMECTRL
すべてのゲーム コントローラ。
DI8DEVCLASS_KEYBOARD
すべてのキーボード。DI8DEVTYPE_KEYBOARD と同義である。
DI8DEVCLASS_POINTER
DI8DEVTYPE_MOUSE および DI8DEVTYPE_SCREENPOINTER 型のすべてのデバイス。
lpCallback
列挙されるデバイスごとに一度呼び出されるコールバック関数のアドレス。「DIEnumDevicesCallback」を参照すること。
pvRef
アプリケーション定義の 32 ビット値。列挙コールバック関数が呼ばれるたびに渡される。
dwFlags
列挙の範囲を指定するフラグ値。次のフラグを指定する。
DIEDFL_ALLDEVICES
すべてのインストール済みデバイスが列挙される。これがデフォルト モードである。
DIEDFL_ATTACHEDONLY
アタッチ状態にあり、インストール済みのデバイスだけ。
DIEDFL_FORCEFEEDBACK
フォース フィードバックをサポートするデバイスだけ。
DIEDFL_INCLUDEALIASES
ほかのデバイスのエイリアスであるデバイスを含む。
DIEDFL_INCLUDEHIDDEN
隠しデバイスを含む。隠しデバイスの詳細については、「DIDEVCAPS」を参照すること。
DIEDFL_INCLUDEPHANTOMS
仮想デバイス (プレースホルダ) を含む。

戻り値

成功した場合は、DI_OK を返す。

失敗した場合は、次のいずれかのエラー値を返す。

DIERR_INVALIDPARAM
DIERR_NOTINITIALIZED

注意

すべてのインストール済みデバイスは、たとえそれが現存していなくても列挙可能である。たとえば、操縦桿を、システムにインストールするだけしておいて、当面はコンピュータに接続しないでおくこともできる。dwFlags パラメータを設定して、アタッチ状態にあるデバイスだけを列挙するか、またはインストール済みのすべてのデバイスを列挙するかを指示する。DIEDFL_ATTACHEDONLY フラグが存在しない場合は、インストール済みの全デバイスが列挙される。

選別したいデバイス タイプを dwDevType フィルタとして渡して、そのタイプのデバイスだけを列挙することができる。

動作環境

  Windows NT/2000 : Windows 2000 以降に対する再配布可能ファイルとして提供。
  Windows 95/98 : Windows 95 以降に対する再配布可能ファイルとして提供。
  ヘッダー : dinput.h で宣言。

参照

IDirectInput8::EnumDevicesBySemantics