|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.03.2015, 23:29 | #1 |
Регистрация: 24.02.2015
Сообщений: 6
|
wh_keyboard при срабатывание зависают некоторые системные программы
Искал в интернете не нашел почти ничего. такое дело,при срабатывание хука в том же проводнике или блокноте они виснут,в студии той же или браузере все нормально.думаю что код нет смысла приводит потому что удалял все из функции фильтра и ничего не изменилось(CallNextHookEx ясен пень оставил). Сам делаю курсовую на эту тему и во всей этой теме слабо шарю. спасайте. это конечно не критично и преподша сказала что типа ты уже больше меня тут знаешь, но все таки хочется исправить.
|
12.03.2015, 00:02 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
может вы управление не возвращаете или определенные проги просто обязаны обработать клавишу, а её нет или она не доходит. Вот и виснут.
|
12.03.2015, 22:38 | #3 |
Регистрация: 24.02.2015
Сообщений: 6
|
я тоже так думал,поэтому сделал три вызова функции CallNextHookEx,что бы в любом случае вернул,но не помогает. правда я исходники брал из чъей то программы потому что сам плохо знаком с такими темами,спросить не у кого. попробовал исходник длл который брал как образец,выдает тоже самое.
вот исходный код длл, с ним так же зависают,может дело в основной программе?(не сидьно логично конечно но вдруг).в проге просто идет вызов sethook. Код:
Последний раз редактировалось Stilet; 14.03.2015 в 11:12. |
12.03.2015, 23:31 | #4 | |
Участник клуба
Регистрация: 14.06.2011
Сообщений: 1,138
|
Может быть, не обработаны эти случаи:
Цитата:
|
|
12.03.2015, 23:46 | #5 |
Регистрация: 24.02.2015
Сообщений: 6
|
может.попробую и отпишусь.
а это не то? Код:
Последний раз редактировалось Stilet; 14.03.2015 в 11:12. |
13.03.2015, 04:19 | #6 |
Участник клуба
Регистрация: 14.06.2011
Сообщений: 1,138
|
hHookDll изначально инициируется нулем. Изменяется только в case DLL_PROCESS_ATTACH: , следовательно, в этот кейс не заходится. однако ж, что-то возвращается, значит дллка загружена.
А вообще, интересно, что там за ошибка) |
13.03.2015, 21:29 | #7 |
Регистрация: 24.02.2015
Сообщений: 6
|
ну отладчик мне вернул вроде бы 1,а это вот откуда:
Код:
я попробовал добавить в кейз то что ты писал,все тоже самое. Последний раз редактировалось Stilet; 14.03.2015 в 11:12. |
28.03.2015, 02:08 | #8 |
Регистрация: 24.02.2015
Сообщений: 6
|
идей ни у кого нет?
|
06.04.2015, 13:27 | #9 |
Регистрация: 24.02.2015
Сообщений: 6
|
Будет толк если перепишу на WH_KEYBOARD_LL?? и вообще какая разница будет?
|
06.04.2015, 14:27 | #10 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Адрес хук функции надо брать через GetProcAddress из загруженной DLL.
В DllMain не надо ставить хук, система сама грузит DLL и ставит вызов. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Лишнее срабатывание ColumnChanged при переходе по строкам в DataTable | Prigur | Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) | 2 | 07.10.2013 15:16 |
Системные требования своей программы | DIgorevich | Свободное общение | 4 | 17.06.2011 01:46 |
При установке ловушки на клавиатуру зависают приложения, запущенные от имени другого пользователя. | _Lamer | Visual C++ | 2 | 22.11.2010 10:01 |
Не срабатывание русской кодировки при вводе символов с клавиатуры | Syltan | Общие вопросы C/C++ | 5 | 24.05.2010 19:16 |
Системные программы | Yar | Софт | 9 | 29.06.2009 11:58 |