如何使用c ++发送unicode密钥(keybd_event)

我的朋友正在学习挪威语,我想创建一个全局热门密钥程序,它可以发送密钥,例如

æ ø å 

我的问题是keybd_event函数不允许我发送那些密钥,我似乎只限于虚拟密钥代码是否有我可以使用的另一个function或发送它们的一些技巧?

您必须使用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直到!