Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Глобальный захват ввода c клавиатуры Windows.  (Прочитано 4968 раз)
0 Пользователей и 1 Гость смотрят эту тему.
LemmonRus
Помогающий

ru
Offline Offline
В правильно заданном вопросе 90% ответа.


« : 27-07-2015 11:04 » 

Как можно это осуществить если учесть что нельзя создавать окно.
Hook и захват через DirectInput не подходят ибо они обязательно требуют наличия окна.
Есть ли еще способы.
Записан
zubr
Гость
« Ответ #1 : 27-07-2015 11:16 » 

А почему нельзя сделать невидимое окно? DirectInput намного проще, чем следующие варианты не требующие окно:
1. Перехват во всех вновь созданных процессах функций SendMessage, PostMessage, PostThreadMessage
2. Сабклассинг (подмена процедуры окна) во всех процессах, имеющих окна.
Записан
LemmonRus
Помогающий

ru
Offline Offline
В правильно заданном вопросе 90% ответа.


« Ответ #2 : 27-07-2015 14:11 » 

А почему нельзя сделать невидимое окно? DirectInput намного проще, чем следующие варианты не требующие окно:
1. Перехват во всех вновь созданных процессах функций SendMessage, PostMessage, PostThreadMessage
2. Сабклассинг (подмена процедуры окна) во всех процессах, имеющих окна.
Спасибо.Но к сожалению оба способа не подходят.Программа на редкость нервно относится к новым окнам.Создание нового окна ведет к закрытию программы (срабатывает защита). Придется напрячь железячников.
« Последнее редактирование: 27-07-2015 14:13 от LemmonRus » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines