|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.04.2010, 15:17 | #1 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Блокирование системных клавиш и их комбинаций
Исходя из статьи...
Цель: Блокировка системных клавишь и их комбинаций (хорошо было бы если всех). Из исходника по указанной ссылке получилось вот это: Код:
Код:
|
16.04.2010, 15:17 | #2 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Сам проект:
Код:
Программа работает только при первом тестировании, видимо нужно дллки выгружать... Как исправить? Вопрос #2: О каких других системных комбинация говориться в статье, и соответственно как их включить в модули? Вопрос #3: Видимо можно значительно сократить код, что урезать? Автору статьи большая благодарность... |
16.04.2010, 21:33 | #3 | |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Цитата:
Код:
самый главный вопрос: зачем нужна UnHookDLL? |
|
16.04.2010, 21:54 | #4 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
#1:
Мне например нужно функцию клавиши "Win", Alt+Tab, Ctrl+F4 заблокировать... Как их описать? AltTab_CODE = (VK_ALT shl 16) or MOD_TAB; и переменную AltTab_CODE указываем в функцию NewWndProc??? #3 UnHookDLL нужна для того что бы "разблокировать комбинации клавиш" (выгрузка модуля блокирования HookDLL), так как у вас в статье через определенное время происходила операция разблокирования а как по команде из программы (т.е. в ходе работы программы)? (поэтому я и предумал на два модуля разбить, конечно лучше было бы если все в одном и из другого процесса можно было бы контролировать процесс блокирования, разблокирования). #2 Отсюда и вытекает что код на 40 процентов сократить можно... Можно ли экспортировать в дллку событие, в то время как в самой дллки будет реализован механиз на подобии вентиля, который блокировал в случае функционарования горячих клавиш и соответственно разблокировал бы в слечае их блокировки? Точно, как сделать что при вызове дллки он проверял, загружен ли он, если нет то загружался, если да то выгружался, тем самым блокировал бы и разблокировал функциональные клавиши системы... Признаюсь, идея с двумя дллками глупа... Последний раз редактировалось rpy3uH; 17.04.2010 в 09:10. |
17.04.2010, 09:20 | #5 | ||
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Цитата:
AltTab_CODE = (VK_TAB shl 16) or MOD_ALT; Цитата:
Код:
|
||
17.04.2010, 15:26 | #6 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Код:
И еще вопрос, объект зарание создать нужно (CreateEvent к примеру)? И кстате "sleep(10);" в функции не нужен? (для чего он предназначен был, для чего пауза между разблокированием и созданием потока?). Последний раз редактировалось rpy3uH; 18.04.2010 в 15:39. |
17.04.2010, 17:03 | #7 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Сделал следующим образом:
Код:
Код:
Последний раз редактировалось rpy3uH; 18.04.2010 в 15:44. |
18.04.2010, 14:49 | #8 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Разобрался! Спасибо вам большое за ваш код, вы настоящий хакер!
Теперь осталось разобраться в самом механизме, которым блокируються функции системных вызавов, и еще какие можно заблокировать? (мне бы еще Win, CtrlF4, AltTab...) Вот проект: |
18.04.2010, 15:47 | #9 | |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Цитата:
просто добавь ещё проверки в функцию NewWndProc |
|
18.04.2010, 16:18 | #10 | |
Пользователь
Регистрация: 01.12.2008
Сообщений: 27
|
Цитата:
Сам механизм указание горячих клавишь ясен. Только что то не выходит: Код:
Последний раз редактировалось DannerDOS; 18.04.2010 в 16:20. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перебор возможных комбинаций символов | Toxask8 | Общие вопросы C/C++ | 1 | 12.12.2009 21:33 |
Сколько комбинаций у кубика Рубика? | Altera | Свободное общение | 31 | 24.11.2009 03:12 |
Delphi. Проверка комбинаций | Zhamie | Помощь студентам | 7 | 15.09.2009 11:39 |
Как получить имя нажимаемых системных клавиш(Delphi) | The_Darkness | Помощь студентам | 2 | 18.07.2008 18:31 |
блокирование функции | Fireleo | Win Api | 5 | 29.07.2007 17:04 |