Почему некорректно нажимается кнопка на С++?
Если нажать в блокноте на лкм пишется одна буква, если нажать в любой игре (проверял на 3д и на 2д) кнопка зажимается и не отпускается. Что не так? Строки в комментариях использовал, они никак не повлияли.
#include <windows.h>
#include <iostream>
#include <winuser.h>
while (true)
{
if (GetAsyncKeyState(0x01))
{
if (i == 0)
{
Sleep(1000);
INPUT Input = { 0 };
Input.type = INPUT_KEYBOARD;
Input.ki.wVk = 'W';
SendInput(1, &Input, sizeof(Input));
//ZeroMemory(&Input, sizeof(Input));
//Input.ki.dwFlags = KEYEVENTF_KEYUP;
//SendInput(1, &Input, sizeof(Input));
std::cout << " 1 " << std::endl;
Sleep(100);
i = 1;
}
}
else
{
i = 0;
}
Sleep(20);
}
}