XInput 版本

XInput 是用于 Xbox 和 Windows 的跨平台 API。 在 Xbox 上,XInput 作为静态库提供,该库编译为主游戏可执行文件。 在 Windows 上,XInput 作为安装在作系统的系统文件夹中的 DLL 提供。

目前有三个当前版本的 XInput DLL。 根据所使用的 XInput 功能以及要支持的 Windows 版本,选择相应的 XInput 版本。

  • XInput 1.4:XInput 1.4 作为 Windows 10 的一部分提供。 使用此版本生成 UWP 应用。
  • XInput 9.1.0:XInput 9.1.0 作为 Windows Vista、Windows 7 和 Windows 8 的一部分提供。 如果你的桌面应用打算在这些版本的 Windows 上运行,并且你使用的是基本 XInput 功能,请使用此版本。
  • XInput 1.3:XInput 1.3 作为 DirectX SDK 中的可再发行组件提供,支持 Windows Vista、Windows 7 和 Windows 8。 如果你的桌面应用打算在这些版本的 Windows 上运行,并且你需要 XInput 9.1.0 不支持的功能,请使用此版本。

XInput 1.4

XInput 1.4 今天作为 Windows 8 中的系统组件提供,XINPUT1_4.DLL。 它提供“收件箱”,不需要通过应用程序重新分发。 Windows 软件开发工具包(SDK)包含用于静态链接XINPUT1_4.DLL的标头和导入库。 若要下载 Windows 8 SDK,请参阅 下载以开发桌面应用

XInput 1.4 与其他版本的 XInput 具有以下主要优势:

  • 这是唯一可用于 C++/DirectX Windows 应用商店应用的版本。
  • 新的 XInputGetAudioDeviceIds 函数提供了一个音频设备 ID 字符串,可用于打开附加到控制器的耳机的 XAudio2 主语音或音频设备。 XInputGetDSoundAudioDeviceGuids 函数在此版本中不可用。
  • 提供改进的设备功能报告,包括XINPUT_CAPS_WIRELESS、XINPUT_CAPS_FFB_SUPPORTED、XINPUT_CAPS_PMD_SUPPORTED和XINPUT_CAPS_NO_NAVIGATION标志以及更准确的XINPUT_CAPS_VOICE_SUPPORTED报告。 这些标志在 标志XINPUT_CAPABILITIES 结构的成员中组合。 XInputGetCapabilities 函数返回 XINPUT_CAPABILITIES

XInput 9.1.0

与 XInput 1.4 一样,XInput 9.1.0 今天作为 Windows 10、Windows 8.x、Windows 7 和 Windows Vista 中的系统组件作为XINPUT9_1_0.DLL提供。 它主要用于与现有应用程序的向后兼容性。 它具有缩减的函数集,因此我们建议尽可能使用 XInput 1.4。 但是,对于必须在 Windows 的下层版本上运行但不需要 XInput 1.4 或 XInput 1.3 提供的其他音频功能的应用程序,这很方便。

Windows SDK 包含标头和导入库,用于静态链接XINPUT9_1_0.DLL。

XInput 9.1.0 在其他版本的 XInput 方面具有以下缺点:

XInput 1.3

某些早期版本的 XInput 已在 DirectX SDK 中作为可再发行 DLL 提供。 第一个可再发行版本的 XInput,XInput 1.1,在 DirectX SDK 的 2006 年 4 月版本中发布。 DirectX SDK 中提供的最后一个版本是 XInput 1.3,在 2010 年 6 月发布的旧版 DirectX SDK 中提供。 DirectX SDK 在下载Microsoft不再可用。

可以将 XInput 1.3 用于支持下层版本的 Windows 的应用程序,并且需要 XInput 9.1.0 不提供的功能(即正确的子类型报告、音频支持、显式电池报告支持等)。