如何以非弃用的方式访问Windows上的操纵杆?

我想写一个访问操纵杆的
Windows应用程序.它只是一个非常简单的应用程序,它读取值并将它们发送到服务器,所以我没有使用任何游戏编程框架.但是,我对使用哪种API感到困惑.

我查看了多媒体操纵杆API,但这被描述为被DirectInput取代.所以我看了DirectInput,但是这也被弃用了,而不是XInput.
然而,XInput文档仅讨论Xbox360控制器,并表示它不支持“传统DirectInput设备”.

微软是否将整个HID操纵杆使用类型委托给垃圾箱并放弃支持它们以支持他们自己的专有控制器产品,或者我错过了什么?

最佳答案 最常见的解决方案是使用XInput和DirectInput的组合,以便您的应用程序可以正确访问这两种类型的设备.微软甚至提供
instructions on how to do this.

请注意,DirectInput不适用于Windows应用商店应用,因此如果您打算通过那里分发,那么这不是一个选项.

像XBox 360控制器这样的XInput设备也可以与DirectInput配合使用,但有一些限制.值得注意的是,左右触发器将映射到同一轴而不是独立的,并且振动效果将不可用.

点赞