Freigeben über


XInput-Versionen

XInput ist eine plattformübergreifende API, die für die Verwendung auf Xbox und Windows ausgeliefert wurde. Auf Xbox wird XInput als statische Bibliothek ausgeliefert, die in der ausführbaren Hauptspieldatei kompiliert wird. Unter Windows wird XInput als DLL bereitgestellt, die in den Systemordnern des Betriebssystems installiert ist.

Es gibt heute drei aktuelle Versionen der XInput DLL. Wählen Sie die entsprechende Version von XInput basierend auf der Funktionalität von XInput aus, die Sie verwenden, und die Versionen von Windows, die Sie unterstützen möchten.

  • XInput 1.4: XInput 1.4 wird als Teil von Windows 10 ausgeliefert. Verwenden Sie diese Version zum Erstellen von UWP-Apps.
  • XInput 9.1.0: XInput 9.1.0 wird als Teil von Windows Vista, Windows 7 und Windows 8 ausgeliefert. Verwenden Sie diese Version, wenn Ihre Desktop-App für diese Versionen von Windows ausgeführt werden soll und Sie grundlegende XInput-Funktionen verwenden.
  • XInput 1.3: XInput 1.3 wird als weitervertreibbare Komponente im DirectX SDK mit Unterstützung für Windows Vista, Windows 7 und Windows 8 ausgeliefert. Verwenden Sie diese Version, wenn Ihre Desktop-App für diese Versionen von Windows ausgeführt werden soll, und Sie benötigen Funktionen, die von XInput 9.1.0 nicht unterstützt werden.

XInput 1.4

XInput 1.4 wird heute als Systemkomponente in Windows 8 als XINPUT1_4.DLL ausgeliefert. Es ist "Posteingang" verfügbar und erfordert keine Umverteilung mit einer Anwendung. Das Windows Software Development Kit (SDK) enthält die Header- und Importbibliothek zum statischen Verknüpfen mit XINPUT1_4.DLL. Informationen zum Herunterladen des Windows 8 SDK finden Sie unter Downloads für die Entwicklung von Desktop-Apps.

XInput 1.4 hat gegenüber anderen Versionen von XInput folgende Hauptvorteile:

  • Dies ist die einzige Version, die in C++/DirectX Windows Store-Apps verwendet werden kann.
  • Die neue XInputGetAudioDeviceIds--Funktion stellt eine Audiogeräte-ID-Zeichenfolge bereit, mit der Sie eine XAudio2-Masterstimme oder ein Audiogerät für ein Headset öffnen können, das an einen Controller angeschlossen ist. Die XInputGetDSoundAudioDeviceGuids Funktion ist in dieser Version nicht verfügbar.
  • Bietet verbesserte Gerätefunktionen, einschließlich XINPUT_CAPS_WIRELESS, XINPUT_CAPS_FFB_SUPPORTED, XINPUT_CAPS_PMD_SUPPORTED und XINPUT_CAPS_NO_NAVIGATION Flags und genauerer Berichterstellung von XINPUT_CAPS_VOICE_SUPPORTED. Diese Flags werden im Flags Mitglied der XINPUT_CAPABILITIES-Struktur kombiniert. Die XInputGetCapabilities Funktion gibt XINPUT_CAPABILITIESzurück.

XInput 9.1.0

Wie XInput 1.4 wird XInput 9.1.0 heute als Systemkomponente in Windows 10, Windows 8.x, Windows 7 und Windows Vista als XINPUT9_1_0.DLL ausgeliefert. Sie wird hauptsächlich aus Gründen der Abwärtskompatibilität mit vorhandenen Anwendungen beibehalten. Es verfügt über einen reduzierten Funktionssatz, daher wird empfohlen, XInput 1.4 nach Möglichkeit zu verwenden. Es ist jedoch praktisch, für Anwendungen zu verwenden, die auf Down-Level-Versionen von Windows ausgeführt werden müssen, aber nicht die zusätzlichen Audiofunktionen benötigen, die von XInput 1.4 oder XInput 1.3 bereitgestellt werden.

Das Windows SDK enthält die Header- und Importbibliothek für die statische Verknüpfung mit XINPUT9_1_0.DLL.

XInput 9.1.0 hat diese Nachteile gegenüber anderen Versionen von XInput:

  • Aus Gründen der Abwärtskompatibilität gibt XInputGetCapabilities- in dieser Version von XInput feste Funktionsinformationen zurück. Unabhängig vom angeschlossenen Controllergerät meldet XInputGetCapabilities- in XInput 9.1.0 immer einen Geräteuntertyp von GAMEPAD. Es wird nicht das bit der XINPUT_CAPS_WIRELESS-Funktion zurückgegeben, auch wenn ein drahtloses Gerät verbunden ist.
  • Sie können das Headset für eine bestimmte Benutzer-ID nicht ermitteln. Die XInputGetAudioDeviceIds--Funktion ist nicht verfügbar, und XInputGetDSoundAudioDeviceGuids- funktion gibt keine Ergebnisse für Windows 8.x oder Windows 10 zurück.
  • Die XInputEnable, XInputGetBatteryInformationund XInputGetKeystroke Funktionen sind nicht verfügbar.

XInput 1.3

Einige frühere Versionen von XInput wurden als verteilbare DLLs im DirectX SDK bereitgestellt. Die erste weiterverteilbare Version von XInput, XInput 1.1, wurde in der Version vom April 2006 des DirectX SDK ausgeliefert. Die letzte Version, die im DirectX SDK ausgeliefert werden soll, war XInput 1.3, die in der Version vom Juni 2010 des älteren DirectX SDK verfügbar ist. Das DirectX SDK ist unter Microsoft Downloadsnicht mehr verfügbar.

Sie können XInput 1.3 für Anwendungen verwenden, die Down-Level-Versionen von Windows unterstützen und funktionen erfordern, die nicht von XInput 9.1.0 bereitgestellt werden (d. h. korrekte Untertypberichterstattung, Audiounterstützung, explizite Unterstützung für akkuberichterstattung usw.).