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

时间:2012-05-29 09:59:08

标签: c++ winapi

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

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

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

Using UnicodeEx我该怎么做?

2 个答案:

答案 0 :(得分:3)

阅读ToUnicodeEx documentation,我会尝试这样的事情:

wchar_t buff[10];

BYTE keyState[256] = {0};

int result = ToUnicodeEx(
    kbhook->vkCode,
    kbhook->scanCode,
    keyState,
    buff,
    _countof(buff),
    0,
    NULL);

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

答案 1 :(得分:-1)

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