小编Ale*_*kov的帖子

SendInput()不是"发送"正确的移位字符?

void WriteChar(char c)
{
    INPUT input = {0};
    input.type = INPUT_KEYBOARD;
    input.ki.wVk= VkKeyScanEx(c, GetKeyboardLayout(0) ) ;   
    SendInput(1,&input, sizeof(INPUT));
}
Run Code Online (Sandbox Code Playgroud)

VkKeyScanEx为'/'和'?'(相同的键)返回不同的键代码,但是如果您尝试使用此方法编写包含'?'的消息,则只会写'/'.我不知道发生了什么事.同样的事情发生在';' 和':'.

我部分不了解密钥代码和扫描代码.大多数角色都有虚拟键码,但我找不到类似问号的东西.它们必须存在,但没有列出?

c++ winapi scancodes virtual-keyboard sendinput

7
推荐指数
2
解决办法
5601
查看次数

标签 统计

c++ ×1

scancodes ×1

sendinput ×1

virtual-keyboard ×1

winapi ×1