virtualKeycode ToUnicode

时间:2013-01-19 17:49:08

标签: c windows unicode keyboard keycode

我一直在尝试获取给定键码的unicode字符,但我无法弄清楚为什么我必须提供这么多参数。来自MSDN:

int WINAPI ToUnicode(
  _In_      UINT wVirtKey,
  _In_      UINT wScanCode,
  _In_opt_  const BYTE *lpKeyState,
  _Out_     LPWSTR pwszBuff,
  _In_      int cchBuff,
  _In_      UINT wFlags
);

我有一个VirtualKeycode可以使用,但为什么我还需要给它一个扫描码呢?如果您还需要键盘上的扫描码,那么拥有virtualKeycode有什么意义呢?

到目前为止我尝试过:

const unsigned int BUFFER_LENGTH = 3;
WCHAR string[BUFFER_LENGTH];
const BYTE* keyboard = new BYTE[256]; 
unsigned int x = 0x50; //P virtualkeycode
ToUnicode(x,0,keyboard,string,1,0)

ToUnicode返回0,表示无法转换为Unicode。

0 个答案:

没有答案