С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

Как получать данные от клавиатуры без фокуса? - C++

25.01.2014, 21:12. Просмотров 278. Ответов 7
Метки нет (Все метки)

Если окно не в фокусе, возможно, даже свернуто, как можно получать данные о вводе с клавиатуры или мышки? Нужно для того, чтобы после нажатия ctrl+c, программа разворачивалась и делала, что нужно, с буфером.
Даже если это можно сделать как-то иначе (например, есть листенер для изменения буфера или что-то подобное), все равно интересует получение данных ввода без фокуса.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.01.2014, 21:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как получать данные от клавиатуры без фокуса? (C++):

Как получать данные с удаленного компьютера - C++
Хочу получать данные с удаленного компьютера (у которого открыт порт 3899), точнее названия учетных записей, подскажите с чего начать? ...

Как в MSComm32.ocx посылать/получать данные в MS VC++ 6.0? - C++
Как в MSComm32.ocx посылать/получать данные в MS VC++ 6.0???

Как строится ветвление, как читать данные, введённые с клавиатуры, как их потом применять - C++
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Мне 11 лет, и я учусь программировать на С++. Расскажите мне о...

Как сделать массив, чтобы все данные вводились с клавиатуры? - C++
добавить переменные (поля класса главной формы) и обработчики событий, необходимые для ввода числа элементов массива комплексных чисел,...

Программа(консольная) работает и одновременно ждет данные от клавиатуры. Как? - C++
Консольная программа. Например, рассмотрит игру "змейка". В этой игре одновременно змейка ползет и ждет данные от клавиатуры. Но если...

Как сделать массив, что бы данные НЕ вводились с клавиатуры, а уже БЫЛИ? - C++
Как сделать массив структур, что бы данные НЕ вводились с клавиатуры, а уже БЫЛИ созданы в командном файле и по ним уже осуществлялся...

7
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
25.01.2014, 21:20 #2
Единственный нормальный вариант - это LL-хук на мышь и на клавиатуру.
1
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
25.01.2014, 21:26  [ТС] #3
castaway, что такое LL-хук? О_о
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
25.01.2014, 21:30 #4
LL == Low Level

на msdn примеры есть
1
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
25.01.2014, 21:30  [ТС] #5
Kastaneda, драйвером что ли?
ок, гляну позже.
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
25.01.2014, 22:00 #6
Цитата Сообщение от nexen Посмотреть сообщение
Kastaneda, драйвером что ли?
нет, пишется Dll, ставится глобальный хук на клавиатуру, функция обработки подгружается из Dll. Это в двух словах.
1
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
25.01.2014, 22:28 #7
Для LL-хука не нужна DLL. Мышь и клавиатура прекрасно перехватываются собственным процессом.
1
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
25.01.2014, 22:38 #8
castaway, хм, возможно. Я не так часто делал хуки, но когда я их делал, то пользовался Dll.
1
25.01.2014, 22:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.01.2014, 22:38
Привет! Вот еще темы с ответами:

Подскажите как передать в функцию данные массива структур, которые я ввожу с клавиатуры? - C++
Подскажите как передать в функцию данные массива структур, которые я ввожу с клавиатуры?

Как излечь данные из xml на с++ без библиотеки и парсера? - C++
Помогите понять, в каком направлении мне двигаться, заранее спасибо.

Как ввести данные без перехода на новую строку? - C++
Собственно вопрос в заголовке. for (int i = 0; i < 4; i++) { for (int j = 0; j < 3; j++) { cin >> arr; } } Если вводить...

Как передать данные из одного процесса в другой без сокетов - C++
как можно передать аргументы функции main другой программы из той которая вызывает другой процесс, отвечающий за ту main куда нужно...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.