C ++ SendMessage / PostMessage WM_KEYDOWN WM_KEYUP не работает

Я пытаюсь нажать кнопку со стрелкой влево и кнопку со стрелкой вправо.
Дескриптор окна, который я передаю, правильный. (см. скриншот ниже)

Я использовал Microsoft Spy ++ для определения правильного PostMessage, когда я нажимаю левую / правую клавиши.

Вот скриншоты, показывающие lParam а также WParam

Первые 2 скриншота VK_RIGHT (WM_KEYDOWN & WM_KEYUP)
Следующие 2 скриншота VK_LEFT (WM_KEYDOWN & WM_KEYUP)

сообщение 1
сообщение 2
сообщение 3
сообщение 4

Вот код, который я пытался использовать, он работает, нажав NUMPAD1,2,3 чтобы проверить, действительно ли VK_LEFT ИЛИ ЖЕ VK_RIGHT работает .. (ни один из них не работает).

gKey(VK_NUMPAD1) //crap testing
{
windowHandle = FindWindow(L"SSClientMainWndClass", NULL);
printf("window handle = %x\n", windowHandle);
PostMessage(windowHandle, WM_KEYDOWN, VK_RIGHT, 0x414D0001);
//Sleep(1000);
PostMessage(windowHandle, WM_KEYUP, VK_RIGHT, 0xC14D0001);
Sleep(1000);

}
gKey(VK_NUMPAD2) //crap testing
{
windowHandle = FindWindow(L"SSClientMainWndClass", NULL);
printf("window handle = %x\n", windowHandle);
PostMessage(windowHandle, WM_KEYDOWN, VK_LEFT, 0x414B0001);
Sleep(1000);
PostMessage(windowHandle, WM_KEYUP, VK_LEFT, 0xC14B0001);
Sleep(1000);
}

код

Вот скриншоты нажатия VK_NUMPAD1 в игре. (Сообщение отправляется в правильное окно, и информация кажется правильной!)
[сообщение 1
сообщение 2

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]