我正在使用DirectInput和XInput包装输入系统。当前,XInput设备被枚举了两次,一次是XInput,一次是DirectInput(因为它们都支持)。
如何确定给定的DirectInput设备是否还支持XInput?关于这个主题有this MSDN page,但是它需要wbemidl.h和wmsstd.h,而mingw/gcc中没有这些wwmidl.h和wmsstd.h(出于某种原因,我想避免使用msvc-可能是出于习惯)。
我认为将设备名称/指南列入黑名单不是一个好的解决方案,但是有更好的解决方案吗?
谢谢。
最佳答案
wbemidl.h
和所有相关 header 都可以从 mingw-w64
项目中获得,不要介意64
也支持32位。
Here
是在不包含IsXInputDevice
的情况下实现wmsstd.h
的示例