Показать сообщение отдельно
  #3  
Старый 17.10.2008, 15:46
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

теоретически, можно.
практически, да с учетом Висты - нереально.

Но потеоретизировать можно.
Дело в том, что все софтовые нажималки-кликалки обычно пользуются только вызовом SendMessage или PostMessage. Соответсвенно, хукнув их можно отследить нужные сообщения, типа WM_CHAR.
Шаг второй - установка соотв. драйвера устройства в цепочку. Причем как можно "ниже" (т.е. ближе к устройству). Вот оттуда ты получишь информацию о том, действительно ли произошло нажатие клавиши.
Далее просто сравниваешь эти 2 лога (т.к. Windows не является ОС реального времени, то там явно будет некоторый разброс по времени). Если соотв. события присутствуют в обеих логах - значится человек. Если только в одном -значится программа.

Думаю таким образом можно это отследить. Но, повторюсь, реально сделать такую штуку еще можно, хотя делать зачузаешься, но вот незаметно подсадить - вот это уже будет высший пилотаж
Ответить с цитированием