gpt4 book ai didi

c++ - 如何使用 keybd_event 函数打印/按下 '@'?

转载 作者:可可西里 更新时间:2023-11-01 10:35:27 25 4
gpt4 key购买 nike

按'a'代码是

keybd_event(VkKeyScan(64),0,0,0);

释放关键码是

keybd_event(VkKeyScan(64),0,KEYEVENTF_KEYUP,0);

要按“@”,我需要两个键的组合 - SHIFT 和 2,但我不知道怎么做。

keybd_event ( https://msdn.microsoft.com/en-us/library/windows/desktop/ms646304(v=vs.85).aspx )

最佳答案

尝试以下操作:

  1. 按 Shift 键
  2. 按2
  3. 第 2 版
  4. 发布类次

附录

我只是检查了我自己的代码,我做了同样的事情... keybd_event 已被弃用(如您链接的网站上所述),您应该改用 SendInput .

这是我发送按键按下和释放的两个函数:

void sendKeyDown(unsigned char keyCode)
{
INPUT input;
input.type = INPUT_KEYBOARD;

input.ki.wVk = keyCode;
input.ki.dwFlags = 0;
input.ki.time = 0;
input.ki.dwExtraInfo = 0;

SendInput(1, &input, sizeof(INPUT));
}

void sendKeyUp(unsigned char keyCode)
{
INPUT input;
input.type = INPUT_KEYBOARD;

input.ki.wVk = keyCode;
input.ki.dwFlags = KEYEVENTF_KEYUP;
input.ki.time = 0;
input.ki.dwExtraInfo = 0;

SendInput(1, &input, sizeof(INPUT));
}

然后这应该给你一个 @:

sendKeyDown(VK_SHIFT);
sendKeyDown(0x32);
sendKeyUp(0x32);
sendKeyUp(VK_SHIFT);

请检查0x32,我目前无法可靠地测试它是否是 key 2

关于c++ - 如何使用 keybd_event 函数打印/按下 '@'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30083750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com