Я пытаюсь создать программу, которая будет имитировать нажатие клавиши LEFT
в окне.
Я использую это:
PostMessage(hwnd, WM_KEYDOWN, new IntPtr(0x25), new IntPtr(0));
и это:
PostMessage(hwnd, WM_KEYUP, new IntPtr(0x25), new IntPtr(0));
Но результаты этих двух строк кода не идентичны результатам обычного нажатия LEFT
в окне ...
Обычного нажатия LEFT
(РАБОТАЕТ):
P WM_KEYDOWN nVirtKey:VK_LEFT cRepeat:1 ScanCode:4B fExtended:1 fAltDown:0 fRepeat:0 fUp:0
P WM_KEYUP nVirtKey:VK_LEFT cRepeat:1 ScanCode:4B fExtended:1 fAltDown:0 fRepeat:1 fUp:1
PostMessage
LEFT
нажатие клавиши (НЕ РАБОТАЕТ):
P WM_KEYDOWN nVirtKey:VK_LEFT cRepeat:0 ScanCode:00 fExtended:0 fAltDown:0 fRepeat:0 fUp:0
P WM_KEYUP nVirtKey:VK_LEFT cRepeat:0 ScanCode:00 fExtended:0 fAltDown:0 fRepeat:0 fUp:0
Почему это так? Это из-за того, что cRepeat
, ScanCode
, fExtended
, fRepeat
и fUp
не совпадают? если да, то как мне их правильно настроить?