Win32 API 日本語リファレンス
ホームDevices.HumanInterfaceDevice › IDirectInputJoyConfig

IDirectInputJoyConfig

COM
IID1de12ab1-c9f5-11cf-bfc7-444553540000継承元IUnknown自前メソッド開始 vtbl3

メソッド 16

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT Acquire()
vtbl 4 HRESULT Unacquire()
vtbl 5 HRESULT SetCooperativeLevel(HWND param0, DWORD param1)
param0HWNDin協調レベルを関連付ける対象ウィンドウのハンドル。
param1DWORDin協調レベルフラグ。DISCL_EXCLUSIVE/DISCL_BACKGROUND等の組み合わせ。
vtbl 6 HRESULT SendNotify()
vtbl 7 HRESULT EnumTypes(LPDIJOYTYPECALLBACK param0, void* param1)
param0LPDIJOYTYPECALLBACKin登録済みのジョイスティック種別を受け取る列挙コールバック関数。
param1void*inoutコールバックへ渡されるアプリ定義コンテキスト値。NULL可。
vtbl 8 HRESULT GetTypeInfo(LPWSTR param0, DIJOYTYPEINFO* param1, DWORD param2)
param0LPWSTRin情報取得対象の種別名を示すUnicode文字列。
param1DIJOYTYPEINFO*inout種別情報を受け取るDIJOYTYPEINFO構造体へのポインタ。
param2DWORDin取得するフィールドを示すフラグ。DITC_*値の組み合わせを指定する。
vtbl 9 HRESULT SetTypeInfo(LPWSTR param0, DIJOYTYPEINFO* param1, DWORD param2)
param0LPWSTRin設定対象の種別名を示すUnicode文字列。
param1DIJOYTYPEINFO*inout設定する種別情報を格納したDIJOYTYPEINFO構造体へのポインタ。
param2DWORDin設定するフィールドを示すフラグ。DITC_*値の組み合わせ。
vtbl 10 HRESULT DeleteType(LPWSTR param0)
param0LPWSTRin削除する種別名を示すUnicode文字列。
vtbl 11 HRESULT GetConfig(DWORD param0, DIJOYCONFIG* param1, DWORD param2)
param0DWORDin対象ジョイスティックのID番号(0起点)。
param1DIJOYCONFIG*inout構成情報を受け取るDIJOYCONFIG構造体へのポインタ。
param2DWORDin取得するフィールドを示すフラグ。DIJC_*値の組み合わせを指定する。
vtbl 12 HRESULT SetConfig(DWORD param0, DIJOYCONFIG* param1, DWORD param2)
param0DWORDin対象ジョイスティックのID番号(0起点)。
param1DIJOYCONFIG*inout設定する構成情報を格納したDIJOYCONFIG構造体へのポインタ。
param2DWORDin設定するフィールドを示すフラグ。DIJC_*値の組み合わせ。
vtbl 13 HRESULT DeleteConfig(DWORD param0)
param0DWORDin削除する構成のジョイスティックID番号(0起点)。
vtbl 14 HRESULT GetUserValues(DIJOYUSERVALUES* param0, DWORD param1)
param0DIJOYUSERVALUES*inoutユーザー設定値を受け取るDIJOYUSERVALUES構造体へのポインタ。
param1DWORDin取得するフィールドを示すフラグ。DIJU_*値の組み合わせを指定する。
vtbl 15 HRESULT SetUserValues(DIJOYUSERVALUES* param0, DWORD param1)
param0DIJOYUSERVALUES*inout設定するユーザー設定値を格納したDIJOYUSERVALUES構造体へのポインタ。
param1DWORDin設定するフィールドを示すフラグ。DIJU_*値の組み合わせ。
vtbl 16 HRESULT AddNewHardware(HWND param0, GUID* param1)
param0HWNDinハードウェア追加ウィザード表示時の親ウィンドウハンドル。
param1GUID*in追加するデバイスのクラスGUIDへのポインタ。
vtbl 17 HRESULT OpenTypeKey(LPWSTR param0, DWORD param1, HKEY* param2)
param0LPWSTRin開く種別名を示すUnicode文字列。
param1DWORDinレジストリアクセス権を示すフラグ。KEY_READ等を指定する。
param2HKEY*inout開かれたレジストリキーのハンドルを受け取るHKEYへのポインタ。
vtbl 18 HRESULT OpenConfigKey(DWORD param0, DWORD param1, HKEY* param2)
param0DWORDin対象ジョイスティックのID番号(0起点)。
param1DWORDinレジストリアクセス権を示すフラグ。KEY_READ等を指定する。
param2HKEY*inout開かれたレジストリキーのハンドルを受け取るHKEYへのポインタ。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDirectInputJoyConfig "{1DE12AB1-C9F5-11CF-BFC7-444553540000}"
#usecom global IDirectInputJoyConfig IID_IDirectInputJoyConfig "{}"
#comfunc global IDirectInputJoyConfig_Acquire              3
#comfunc global IDirectInputJoyConfig_Unacquire            4
#comfunc global IDirectInputJoyConfig_SetCooperativeLevel  5 sptr,int
#comfunc global IDirectInputJoyConfig_SendNotify           6
#comfunc global IDirectInputJoyConfig_EnumTypes            7 sptr,sptr
#comfunc global IDirectInputJoyConfig_GetTypeInfo          8 wstr,var,int
#comfunc global IDirectInputJoyConfig_SetTypeInfo          9 wstr,var,int
#comfunc global IDirectInputJoyConfig_DeleteType           10 wstr
#comfunc global IDirectInputJoyConfig_GetConfig            11 int,var,int
#comfunc global IDirectInputJoyConfig_SetConfig            12 int,var,int
#comfunc global IDirectInputJoyConfig_DeleteConfig         13 int
#comfunc global IDirectInputJoyConfig_GetUserValues        14 var,int
#comfunc global IDirectInputJoyConfig_SetUserValues        15 var,int
#comfunc global IDirectInputJoyConfig_AddNewHardware       16 sptr,var
#comfunc global IDirectInputJoyConfig_OpenTypeKey          17 wstr,int,sptr
#comfunc global IDirectInputJoyConfig_OpenConfigKey        18 int,int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。