如何从虚拟密钥代码中获取密钥文本

How to get the key-text from the virtual key code?

本文关键字:密钥 获取 文本 代码 虚拟      更新时间:2023-10-16

如何从虚拟键代码中获取键文本?

 KBDLLHOOKSTRUCT * kbhook = (KBDLLHOOKSTRUCT *) lParam;
  cout << kbhook->vkCode <<endl;

例如,q的虚拟密钥代码为 81。我想q返回.我该怎么做?

使用 UnicodeEx 我该怎么办?

阅读ToUnicodeEx文档,我会尝试这样的东西:

wchar_t buff[10];
BYTE keyState[256] = {0};
int result = ToUnicodeEx(
    kbhook->vkCode,
    kbhook->scanCode,
    keyState,
    buff,
    _countof(buff),
    0,
    NULL);

成功后,buff应包含 Unicode 字符。

cout << char(kbhook->vkCode) << endl;