Некоторые клавиши на моей клавиатуре не работают, поэтому я решил создать программу, которая будет работать в фоновом режиме, и нажать эти клавиши для меня.
Все работает отлично, но есть проблема.
Я сделал это, если вы удерживаете клавишу Print Screen и нажимаете клавишу под моей не работающей клавишей (например, g, потому что я хочу нажать t), она удаляет эту клавишу под клавишей Backspace (потому что я нажал ее) и нажимает неработающую клавишу ,
Проблема в том, что функция SendInput не работает в некоторых местах с клавишей Backspace, например, если я пытаюсь набрать Counter-Strike с этим, он ловит, что ввод ключа не работает, но не клавиша Backspace.
В чем может быть проблема?
INPUT in;
int main() {
in.type = INPUT_KEYBOARD;
in.ki.wScan = 0;
in.ki.time = 0;
in.ki.dwExtraInfo = 0;
sendInput(VK_BACK); // <--- THIS doesn't work on some programs, input just doesn't send
}
void sendInput(WORD k) {
in.ki.wVk = k;
in.ki.dwFlags = 0;
SendInput(1, &in, sizeof(INPUT));
}
Задача ещё не решена.
Других решений пока нет …