次の方法で共有


DICONFIGUREDEVICESPARAMS

デバイス構成プロパティ シートに関する情報を格納します。IDirectInput8::ConfigureDevices メソッドによって使用されます。

typedef struct DICONFIGUREDEVICESPARAMS {
    DWORD dwSize;
    DWORD dwcUsers;
    LPTSTR lptszUserNames;
    DWORD dwcFormats;
    LPDIACTIONFORMAT lprgFormats;
    HWND hwnd;
    DICOLORSET dics;
    IUnknown * lpUnkDDSTarget;
} DICONFIGUREDEVICESPARAMS, *LPDICONFIGUREDEVICESPARAMS;

メンバ

  • dwSize
    この構造体のサイズ (バイト)。
  • dwcUsers
    lptszUserNames に指定された、バッファー内にあるユーザー名のカウント。lptszUserNames が NULL (既定のユーザー名を使用するように指定する) ならば、このメンバーの値は無視されます。dwcUsers 値が実際にバッファー内にあるエントリ数を超える場合、メソッドは失敗して DIERR_INVALIDPARAM を返します。
  • lptszUserNames
    一連の NULL 終端名前文字列を含むバッファーへのポインター。最後の要素は、二重 NULL 終端文字によって指定されます。lptszUserNames パラメーターを NULL に設定すると、既定の名前の使用を指示できます。dwcUsers カウントに示された数より多くの名前をアプリケーションが渡すと、カウントを超えない数の名前のみが使用されます。デバイスに現在割り当てられている名前と異なる名前をアプリケーションが指定すると、すべてのデバイスの所有権が取り消され、一致しない名前に対して既定の名前が作成され、すべてのデバイスについてインターフェイスに [(No User)] と表示されます。
  • dwcFormats
    lprgFormats にある配列内の構造体のカウント。
  • lprgFormats
    ゲームによって使用される各ジャンルのアクション マッピング情報を含む、DIACTIONFORMAT 構造体の配列へのポインター。入力時には、この配列にはアクションからコントロールへのマッピング、およびそれぞれのマッピングごとにコールアウトとして表示される文字列が含まれます。構成インターフェイスには、配列内と同じ順序でドロップダウン リストにジャンルが表示されます。
  • hwnd
    呼び出し側アプリケーションの最上位ウィンドウのハンドル。このメンバーはウィンドウ モードで実行されるアプリケーションの場合のみ必要で、それ以外の場合は無視されます。
  • dics
    構成ユーザー インターフェイスに適用されるカラー スキームを指定する DICOLORSET 構造体。ゼロで初期化した DICOLORSET 構造体を渡すと、既定のカラー スキームが使用されます。
  • lpUnkDDSTarget
    構成ユーザー インターフェイスのイメージを格納する、Microsoft DirectDraw または Direct3D ターゲット サーフェス オブジェクトに対する IUnknown インターフェイスへのポインター。このイメージは、DIEnumDevicesBySemanticsCallback 関数が呼び出された時点でのユーザー インターフェイスの現在の状態を表しています。ターゲット サーフェスは、前述の DICOLORSET 構造体の一部として渡されたアルファ情報、およびハードウェア製造元によってデバイス イメージにエンコードされたアルファ情報を保存します。IUnknown インターフェイスが参照するターゲット サーフェス オブジェクトは、IDirect3DSurface8、IDirectDrawSurface7、または IDirectDrawSurface4 のいずれかをサポートする必要があります。IDirect3DSurface9 インターフェイスはサポートされません。詳細については、「IDirectInput8::ConfigureDevices」を参照してください。DirectDraw を使用する全画面アプリケーションのターゲット サーフェスは、DDSCAPS_SYSTEMEMORY フラグを使用して作成されていることが必要です。 DirectDraw を使用しないアプリケーション、および DirectDraw を使用していても全画面ではなくウィンドウに表示されるアプリケーションは、このパラメーターに NULL を渡すことができます。この場合、DirectInput は Windows Graphics Device Interface (GDI) 関数を使用して構成ユーザー インターフェイス イメージを描画します。IDirect3DSurface9 サーフェスの使用時に NULL を渡すと失敗します。詳しくは、IDirectInput8::ConfigureDevices の「解説」を参照してください。