| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > В 100-й раз про эмуляцию нажатия клавиш |
| Автор: EKoshelev 28.8.2013, 13:16 |
| Короче, во всех примерах нажатие клавиш можно сообщать конкретному приложению или даже конкретному элементу управления. А можно ли сделать так, чтобы нажатия славливали те приложения, которые в данный момент активны? Как в реальной жизни: жму я клавишу "A" на клавиатуре, а на неё реагирует то приложение, которое в данный момент активно. Если это проблематично в Delphi, то возможно есть какой-нибудь другой инструмент? Заранее спасибо. |
| Автор: Чучмек 28.8.2013, 13:19 |
| GetForegroundWindow |
| Автор: EKoshelev 28.8.2013, 13:43 |
| Вот если Excel активен, то работает, а если, например, блокнот, то не пашет. |
| Автор: Чучмек 28.8.2013, 13:58 | ||
Погугли по функциям. |
| Автор: bems 28.8.2013, 23:20 |
| SendInput же |
| Автор: EKoshelev 29.8.2013, 09:01 | ||
| Чучмек, спасибо, в приведённом тобой примере подходит этот хэндл: gtinfo.hwndFocus. Правда, опять-таки не ко всему. То что предложил bems канает везде. По крайней мере из того, что я тестил. bems, спасибо. Нашел вот такой код:
Пашет вроде. Правда ещё не проверил в World of Tanks. |
| Автор: bems 29.8.2013, 19:53 |
| для игр может понадобиться отправлять нажатия в сканкодах |
| Автор: EKoshelev 30.8.2013, 07:02 |
| bems, вот с этого места, если не трудно, по подробнее. Т. к. весь замут как раз ради этого. Вчерась попробовал в WoT передавать нажатия - не чухает совсем. Если таки трудно, то буду рад хотя бы ссылкам на какие-нибудь полезные источники. |
| Автор: bems 30.8.2013, 07:11 |
| вот http://forum.vingrad.ru/forum/topic-338301.html я писал вариант на сях Добавлено через 1 минуту и 28 секунд вопрошающий был удовлетворён, хотя потом в этой теме появился человек, который сказал что у него не работает. попробуй короч |
| Автор: EKoshelev 3.9.2013, 18:13 | ||||
| Короче, всем спасибо (не прошло и полгода, ага). Вот кусок кода, которым я генерю нажатие клавиш:
Вот нехитрый код, при помощи которого можно поузнавать скан-коды клавиш:
В первую лабель выводится скан-код в хексе, в третью ASCII. Про скан-код я в вики узнал кой-чего, чего раньше не знал. Короче, по любому всем спасибо. Особенно bemsу. |