Здравствуйте, CEMb, Вы писали:
CEM>Здравствуйте, travnik, Вы писали:
CEM>>>Но судя по моему коду, оно работает через:
CEM>>>CEM>>>PostMessage(hWnd, WM_KEYDOWN, m_cbKey, 0x1);
CEM>>>
CEM>>>Тут должен быть именно Post, а не Send
T>>Проблема в том что приложение не реагирует ни на Post, ни на Send.
T>>А можно кусочек кода?
CEM>Ну вот, выше, это и есть кусочек кода. Тока что на винампе попробовал, свернул его и послал букву B (next song), сработало
Просмотрел сообщения с помощью Spy++, сообщения которые идут приложению от клавиатуры:
<00022> 002C059E P WM_KEYDOWN nVirtKey:VK_RIGHT cRepeat:1 ScanCode:4D fExtended:1 fAltDown:0 fRepeat:0 fUp:0
<00023> 002C059E S message:0xBD00 [User-defined:WM_APP+15616] wParam:00000027 lParam:014D0001
<00024> 002C059E R message:0xBD00 [User-defined:WM_APP+15616] lResult:00000000
<00025> 002C059E P WM_KEYUP nVirtKey:VK_RIGHT cRepeat:1 ScanCode:4D fExtended:1 fAltDown:0 fRepeat:1 fUp:1
<00026> 002C059E S message:0xBD01 [User-defined:WM_APP+15617] wParam:00000027 lParam:C14D0001
<00027> 002C059E R message:0xBD01 [User-defined:WM_APP+15617] lResult:00000000
А вот что посылается ::PostMessage(hwndWnd, WM_KEYDOWN, VK_RIGHT, 0x1);
::PostMessage(hwndWnd, WM_KEYUP, VK_RIGHT, 0x1); :
<00013> 002C059E P WM_KEYDOWN nVirtKey:VK_RIGHT cRepeat:1 ScanCode:00 fExtended:0 fAltDown:0 fRepeat:0 fUp:0
<00014> 002C059E S message:0xBD00 [User-defined:WM_APP+15616] wParam:00000027 lParam:00000001
<00015> 002C059E R message:0xBD00 [User-defined:WM_APP+15616] lResult:00000000
<00016> 002C059E P WM_KEYUP nVirtKey:VK_RIGHT cRepeat:1 ScanCode:00 fExtended:0 fAltDown:0 fRepeat:0 fUp:0
<00017> 002C059E S message:0xBD01 [User-defined:WM_APP+15617] wParam:00000027 lParam:00000001
<00018> 002C059E R message:0xBD01 [User-defined:WM_APP+15617] lResult:00000000
Как задать ScanCode и т.п.?