Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Вопрос Небольшая проблема с получением нажатой клавиши.

  • Автор темы Автор темы MyDoom
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
7 Окт 2020
Сообщения
4
Реакции
0
У меня есть код который проверяет нажата ли клавиша ПРОБЕЛ, если да, то он идёт в цикл while(GetAsyncKeyState(0x20) < 0). Проблема в том что этот цикл прекращается при нажатии ещё какой-либо клавиши. Вот код. Подскажите как это исправить. Это недо бхоп для CS:GO, просто спамит клавишу пробела.
C++:
Expand Collapse Copy
#define WINVER 0x0500
#include <windows.h>
#include <iostream>
using namespace std;

int main()
{
    INPUT ip;
    int i = 0;
    Sleep(1000);
    ip.type = INPUT_KEYBOARD;
    ip.ki.time = 0;
    ip.ki.wVk = 0;
    ip.ki.dwExtraInfo = 0;
    while (true)
    {
        while (GetAsyncKeyState(0x20) < 0)
        {
            ip.ki.dwFlags = KEYEVENTF_SCANCODE;
            ip.ki.wScan = 0x39;
            SendInput(1, &ip, sizeof(INPUT));
            ip.ki.dwFlags = KEYEVENTF_SCANCODE | KEYEVENTF_KEYUP;
            SendInput(1, &ip, sizeof(INPUT));
            Sleep(15);
        }
    }
}
 
Я выяснил что это проблема в эмуляции нажатия на клавишу. Сейчас буду разбираться как её исправить.
 
Назад
Сверху Снизу