特定のキーコードのユニコード文字を取得しようとしていますが、なぜそんなに多くのパラメーターを指定する必要があるのか わかりません。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 は、Unicode に変換できないことを示す 0 を返します。