IDirectInputJoyConfig8 接口是 DirectInput 中的一个接口,用于配置和管理游戏控制器的信息。以下是该接口的定义:
#undef INTERFACE
#define INTERFACE IDirectInputJoyConfig8
DECLARE_INTERFACE_(IDirectInputJoyConfig8, IUnknown)
{
    STDMETHOD(GetTypeInfo)(THIS_ REFGUID, LPDIJOYTYPEINFO, DWORD, LPCWSTR, LPCWSTR) PURE;
    STDMETHOD(SetTypeInfo)(THIS_ REFGUID, LPCDIJOYTYPEINFO, DWORD, LPCWSTR) PURE;
    STDMETHOD(DeleteType)(THIS_ REFGUID) PURE;
    STDMETHOD(GetConfig)(THIS_ UINT, LPDIJOYCONFIG, DWORD) PURE;
    STDMETHOD(SetConfig)(THIS_ UINT, LPCDIJOYCONFIG, DWORD) PURE;
    STDMETHOD(DeleteConfig)(THIS_ UINT) PURE;
    STDMETHOD(GetUserValues)(THIS_ LPDIJOYUSERVALUES, DWORD) PURE;
    STDMETHOD(SetUserValues)(THIS_ LPCDIJOYUSERVALUES, DWORD) PURE;
    STDMETHOD(AddNewHardware)(THIS_ HWND, REFGUID) PURE;
    STDMETHOD(OpenTypeKey)(THIS_ REFGUID, PHKEY) PURE;
    STDMETHOD(OpenConfigKey)(THIS_ UINT, PHKEY) PURE;
    STDMETHOD(OpenUserKey)(THIS_ PHKEY) PURE;
    STDMETHOD(OpenAppStatusKey)(THIS_ PHKEY) PURE;
    STDMETHOD(Reserved)(THIS_ DWORD) PURE;
    STDMETHOD(Reserved2)(THIS_ DWORD) PURE;
    STDMETHOD(Reserved3)(THIS_ DWORD) PURE;
    STDMETHOD(Reserved4)(THIS_ DWORD) PURE;
    STDMETHOD(Reserved5)(THIS_ DWORD) PURE;
    STDMETHOD(Reserved6)(THIS_ DWORD) PURE;
};

这个接口提供了一系列方法,用于获取和设置游戏控制器的类型、配置、用户值等信息。这些方法包括:

  •  GetTypeInfo: 获取游戏控制器的类型信息。

  •  SetTypeInfo: 设置游戏控制器的类型信息。

  •  DeleteType: 删除游戏控制器的类型信息。

  •  GetConfig: 获取游戏控制器的配置信息。

  •  SetConfig: 设置游戏控制器的配置信息。

  •  DeleteConfig: 删除游戏控制器的配置信息。

  •  GetUserValues: 获取游戏控制器的用户值。

  •  SetUserValues: 设置游戏控制器的用户值。

  •  其他方法用于打开注册表中的键、添加新的硬件等。


请注意,DirectInput 已经被 Microsoft 标记为过时(deprecated),在 Windows 8 和更新版本中,推荐使用 Windows.Gaming.Input 命名空间提供的 API 来处理游戏输入。因此,如果可能的话,建议迁移到新的输入 API。




转载请注明出处:http://www.zyzy.cn/article/detail/26805/Win32 API/Dinputd.h/IDirectInputJoyConfig8