我的朋友正在学习挪威语,我想创建一个全局热键程序,用于发送
等密钥æ
ø
å
我的问题是keybd_event函数不允许我发送这些密钥,我似乎只限于virtual key codes是否还有其他可以使用的功能或发送它们的技巧?
答案 0 :(得分:4)
您必须使用SendInput。 keybd_event不支持发送此类字符(除非它们已经在当前代码页中,就像在挪威计算机上一样)。一些示例代码发送å:
KEYBDINPUT kb={0};
INPUT Input={0};
// down
kb.wScan = 0x00c5;
kb.dwFlags = KEYEVENTF_UNICODE;
Input.type = INPUT_KEYBOARD;
Input.ki = kb;
::SendInput(1,&Input,sizeof(Input));
// up
kb.wScan = 0x00c5;
kb.dwFlags = KEYEVENTF_UNICODE|KEYEVENTF_KEYUP;
Input.type = INPUT_KEYBOARD;
Input.ki = kb;
::SendInput(1,&Input,sizeof(Input));
如果您不知道:在Windows上安装其他键盘布局很容易,并使用快捷方式在它们之间切换。
Lykke直到!