我有一个小型 WIN32 C 应用程序,我在其中使用该KBDLLHOOKSTRUCT
结构。该结构包含按键的 VK 代码。
我尝试将其转换为 ASCII 字符。为此,我使用了 Function MapVirtualKey
,效果很好。
唯一的问题是,一个 VK 代码可以保留多个字符。例子:
在我的键盘(瑞士德语)上存在 key-char .。如果我按Shift+.然后它会创建一个:
. VK 代码是相同的。没问题,我也可以检查是否Shift被按下或被Caps Lock激活。
我唯一的问题是:我怎样才能得到字符':'?我需要这样的功能:
GetKeyChar(vkCode, shift)
我需要这个来获得键盘的“正常”和“移位”值。当然我可以硬编码这个,但我不喜欢这样做。