Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.12.26;
Скачать: CL | DM;

Вниз

Эмулирование нажатия комбинации клавиш CTRL+<стрелка>   Найти похожие ветки 

 
Warner   (2009-05-23 04:44) [0]

Нужно в эмулировать нажатие комбинации ctrl+<стрелка влево> в окне чужого приложения. Делаю это таким кодом:

SendMessage(h, WM_SYSCOMMAND, SC_HOTKEY, h); // h - окно нужного приложения
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(VK_LEFT, 37, 0, 0);
keybd_event(VK_LEFT, 37, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);

При этом контрол нажимается а стрелка нет. Причем если в шоткате вместо стрелки буква (напр. ctrl+R), то код работает нормально. Подскажите, в чем моя ошибка? Или быть может есть какие-то альтернативные константы или коды для обозначения таких сочетаний клавиш?


 
KilkennyCat ©   (2009-05-24 01:36) [1]


> в чем моя ошибка?

37
Ты уверен, что хочешь использовать аппаратный код? И что делаешь это правильно?


 
KilkennyCat ©   (2009-05-24 01:39) [2]

И вообще:
keybd_event Function
Windows NT/2000/XP/Vista:This function has been superseded. Use SendInput instead.


 
Warner   (2009-05-24 01:45) [3]


> Ты уверен, что хочешь использовать аппаратный код?

а как еще это можно сделать?

> И что делаешь это правильно?

если в шоткате буквы вместо стрелок, то все получается, поэтому склонен думать что это делается именно так


 
KilkennyCat ©   (2009-05-24 02:34) [4]


> если в шоткате буквы вместо стрелок

буквы не требуют KEYEVENTF_EXTENDEDKEY


 
KilkennyCat ©   (2009-05-24 02:35) [5]

http://msdn.microsoft.com/en-us/library/ms646304(VS.85).aspx



Страницы: 1 вся ветка

Текущий архив: 2010.12.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
15-1283932268
boriskb
2010-09-08 11:51
2010.12.26
Опять "Academia"


2-1285738449
Temp User
2010-09-29 09:34
2010.12.26
Программно выделить секцию у хидера


15-1279267909
_L_
2010-07-16 12:11
2010.12.26
Помоготе найти заголовочный файл Dwmapi...


2-1285609884
menart
2010-09-27 21:51
2010.12.26
TImage


15-1284150577
Юрий
2010-09-11 00:29
2010.12.26
С днем рождения ! 11 сентября 2010 суббота