Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Hook для перехвата keyboard.

Ответить
Настройки темы
Hook для перехвата keyboard.

Аватара для Guest

Guest



Профиль | Цитировать


Пытаюсь самым обычным образом перехватить сообщения с клавиатуры, однако вызова функции как таковой не происходит. Явно что-то делаю не так . Может кто подскажет или скинет исходник.


HHOOK hook;

LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam)
{
FILE *f;


if((f=fopen("c:\\logfile.txt","a")!=NULL)
{
fputc(MapVirtualKey(wParam,2),f);
fclose(f);
}


return CallNextHookEx(hook, code, wParam, lParam);
}

WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
hook = SetWindowsHookEx(WH_KEYBOARD, KeyboardProc, (HINSTANCE)NULL, GetCurrentThreadId());
return 0;
}

Отправлено: 15:40, 07-02-2004

 

редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Я могу ошщибаться, но по-моему, что бы хук работал, ф-ия реализующая его должна быть в отдельной dll. Во всяком случае, я так делал: http://ivank.ru/trash/KeyHooker.zip

-------
http://ivank.ru


Отправлено: 19:53, 07-02-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

2003slon


Сообщения: n/a

Профиль | Цитировать


Цитата:
что бы хук работал, ф-ия реализующая его должна быть в отдельной dll
C этой SetWindowsHookEx бардак какой-то... Я вообще-то пишу на Дельфях, и чего только не делал, но ничего не получилость (если кнопка нажимается, когда окно программы неактивно, возникает exeption). Народ, скиньте кто-нибудь рабочий код!

Отправлено: 18:17, 10-02-2004 | #3


Аватара для hasherfrog

Старый параноик


Сообщения: 2423
Благодарности: 85

Профиль | Отправить PM | Цитировать


Хотелось бы предупредить, что с этими самыми хуками не все так просто. Хочу  поделиться опытом и немного "постращать". Когда-то я пытался написать прогу, которая следит за мышой. Несмотря на кажущуюся простоту,  почему-то программа иногда сбоила. Я накачал кучу литературы и примеров (очень хороших примеров, профессионально написаных)  и переписал все заново. Сбои продолжались. Тогда я попробовал потестировать и самые лучшие программы-примеры. Как я удивился (и, каюсь, развеселился) , когда и они начали сбоить. Хотя вроде бы, чего тут такого уж сложного-то?
Мораль. Хочешь чтобы хорошо работало, сделай сам. А еще лучше, сначала хорошо подумай, надо ли вообще делать?  Опять KeyLogger?

Для дельфистов хороший пример тут: http://community.borland.com/article...,10323,00.html
Если же пишешь на С/С++, то естественно, Examples for using the SetWindowHookEx()  function are found in the WIN32 SDK.

Отправлено: 09:47, 11-02-2004 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Hook для перехвата keyboard.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] keyboard/interface error, keyboard not detected Aza Материнские платы и память 6 06-01-2010 19:42
Драйвер для Logitech Media Keyboard 600 Bedneo Поиск драйверов, прошивок и руководств 3 10-10-2009 14:43
Программа для перехвата звука clop1000 Видео и аудио: обработка и кодирование 3 22-02-2009 02:39
Вопрос - Методика перехвата и расшифровки ПЭМИН Coutty Защита компьютерных систем 2 19-02-2009 17:27




 
Переход