我正在将 USB 遥控器连接到我的软件,并且需要注册全局热键才能使用它。我有代码,它按预期工作,但是当我连接遥控器时,我发现它在处理修饰键时需要特定的左或右 Alt。
换句话说,现在我将全局热键设置为接受 ALT + SHIFT + 0 来运行特定功能。当我连接遥控器时,我意识到它们的映射需要识别特定的 Key 修饰符。因此,我需要专门搜索 L-ALT + L-SHIFT + 0。我搜索了这些修饰符映射,但找不到任何说明它们是什么的东西。我只能找到通用 ALT 键的修饰符,而不是特定的 L-ALT 修饰符。
目前,我的密钥定义如下:
public const int NOMOD = 0x0000; // No HotKey
public const int ALT = 0x0001; // ALT
public const int CTRL = 0x0002; // CTRL
public const int SHIFT = 0x0004; // SHIFT
public const int WIN = 0x0008; // WIN button
public const int WM_HOTKEY_MSG_ID = 0x0312; // Windows message ID for HotKey
我试图找到 L-Alt、L-CTRL 和 L-Shift 的代码的映射,但没有成功。它们似乎不是ASCII。有谁知道这些的正确代码,或者我在哪里可以找到它们?谢谢。