Форум программистов, компьютерный форум CyberForum.ru

подскажите функции нажатия клавиш. - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
doloto
0 / 0 / 0
Регистрация: 01.04.2008
Сообщений: 5
03.11.2009, 01:48     подскажите функции нажатия клавиш. #1
Сабж. Нужно сделать програмку которая с определенной переодичностью нажимала определенные кнопки. К примеру: нажалось d/5 сек ждем/нажалось h/ 7 сек ждем и тд.
Платформа Windows, среда MVS 2008.
желательно привести пример применения.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2009, 01:48     подскажите функции нажатия клавиш.
Посмотрите здесь:

Отслеживание нажатия клавиш C++
C++ Отслеживание нажатия клавиш.
C++ Имитация нажатия клавиш С/С++
C++ Обработка нажатия клавиш-стрелок
C++ Распознавание нажатия клавиш
C++ Нажатия клавиш
Нереагирование на нажатия клавиш C++
C++ Обработчик нажатия клавиш
C++ Отлов нажатия клавиш
Не обрабатываются нажатия клавиш стрелок C++
Имитация нажатия клавиш C++
C++ Обработка нажатия клавиш

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
niXman
Эксперт C++
 Аватар для niXman
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
03.11.2009, 03:48     подскажите функции нажатия клавиш. #2
doloto, Немного теории.
Нажатие клавиши - физическое действие. По понятным причинам, программа не выполняет физические действия. Либо, посредством некоего исполнительного механизма(http://ru.wikipedia.org/wiki/%D0%98%...B8%D0%B7%D0%BC). Если тебе нужно именно это(в чем я сильно сомневаюсь), то необходимо довольно хорошо владеть познаниями в области электроники. Если таковых нет, или уровень не достаточно хорош, могу преподать пару уроков. Далее, помимо электроники, нужно уметь писать драйвера, так как из под user-space общение с железом запрещено. Это ограничение можно обойти, использую winio(http://www.internals.com/utilities/winio.zip), что я и рекомендую так как сам ее использую. Если тебе все же нужно именно это, могу продолжить.

Почему-то мне кажется, что ты подразумеваешь "сэмитировать клик по контролу". Если да, то тебе повезло, так как это много проще первого варианта(хотя и не так интересно). Все что для этого нужно знать, находится тут: http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx

Успехов.
HIMen
 Аватар для HIMen
4110 / 1359 / 39
Регистрация: 12.04.2009
Сообщений: 2,346
03.11.2009, 03:55     подскажите функции нажатия клавиш. #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <windows.h>
void key(int k)
{
    keybd_event(k, 0, 0, 0);
    keybd_event(k, 0, KEYEVENTF_KEYUP, 0);
}
 
string s="qwerty";
 
Sleep(7000);
for (int i=0; i<s.length(); i++)
{
    key(int(s[i])-32);
}
niXman
Эксперт C++
 Аватар для niXman
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
03.11.2009, 04:11     подскажите функции нажатия клавиш. #4
HIMen, Думаешь ему именно это нужно?
doloto
0 / 0 / 0
Регистрация: 01.04.2008
Сообщений: 5
03.11.2009, 17:50  [ТС]     подскажите функции нажатия клавиш. #5
Чет я коряво задал вопрос.
про keybd_event я в курсе, вопрос скорее в существовании альтернативы этой команде и возможности блокировать ее исполнение. Хочется попробывать сделать бота к одной ММО, но на команды keybd_event и mouse_event не реагирует (вернее, реагирует если нажать кнопку чата, то видно, что символы печатаются+ в любом другом приложении/игре работает). При этом курсор по экрану движется и точки изображения считываются.
Yandex
Объявления
03.11.2009, 17:50     подскажите функции нажатия клавиш.
Ответ Создать тему
Опции темы

Текущее время: 13:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru