Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.03.13;
Скачать: [xml.tar.bz2];

Вниз

Блокировка клавиатуры через глобальный HOOK, возможно ли?   Найти похожие ветки 

 
Eugene   (2002-12-06 12:59) [0]

Скажите возможно блокировать клавиатуру (что бы не одна клавиша не действовала) через глобальный HOOK. У меня получается блокировать все кнопки кроме системных (VK_LWIN, VK_RWIN, VK_APPS) а также сочетание Alt+Tab. А также работают кнопки задейтствованные другими программами (тоже через HOOK). Пробовал ставить глобальный HOOK на другие HOOK процедуры (WH_DEBUG) и блокировать их, но что-то не получается. Подскажите пожалуйста, может я иду не в том направлении.
Заранее спасибо.


 
Separator   (2002-12-06 13:07) [1]

Смотри здесь:
http://delphibase.endimus.ru/?action=viewfunc&topic=syscontrol&id=10202
http://delphibase.endimus.ru/?action=viewfunc&topic=syscontrol&id=10154


 
Eugene   (2002-12-06 13:54) [2]

> Separator ©
На первой ссылке вся клавиатура не бокируется.
Вторую ссылку попробую, но хотелось бы узнать по поводу HOOKа, возможно или нет.


 
Separator   (2002-12-06 13:58) [3]

не знаю


 
Song   (2002-12-06 14:38) [4]

Блокируются одинаково: и на первой и на второй ссылке. Ctrl-Alt-Del не заблокируешь, всё остальное блокируется хорошо и через BlockInput()
Правда, можно заблокировать CAD через rundll32, однако у него есть плохая черта (если даже можно), восстановить нельзя.


 
Eugene   (2002-12-06 15:58) [5]

> Song ©
То есть через HOOK никак не заблокируешь ?
Есть еще вопрос, есть ли разница в HOOKе установленоом из под обычноо юзера (даже с паролем админа) или из под логина SYSTEM (то есть через сервис) ?
Спасибо.


 
Diamond Cat   (2002-12-06 18:25) [6]

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


 
Eugene   (2002-12-06 18:57) [7]

> через хук можно заблокировать почти все
У меня не получилось перекрыть хуком системные клавиши (VK_LWIN, VK_RWIN, VK_APPS)

> но только если другие программы пользуються хуком, и этот хук старше в цепочке хуков чем твой, то тут швах
Но ведь новый ставиться выше предыдущих, значит переставляя HOOK можно постоянно держать его на верху. И потом есть HOOK и на хук, могу я другие хуки выгрузить?


 
Song   (2002-12-07 00:48) [8]

хуком нельзя заблокировать CAD. Остальные комбинации без проблем. Только не понимаю зачем, если есть BlockInput()


 
Eugene   (2002-12-07 20:26) [9]

> Только не понимаю зачем, если есть BlockInput()
BlockInput() блокирует все, а мне надо только клавиатуру.


 
Song   (2002-12-07 22:26) [10]

Хорошо, тогда хук на клавиатуру, но про CAD забудь.


 
Diamond Cat   (2002-12-09 00:54) [11]

>Но ведь новый ставиться выше предыдущих
кто тебе такое сказал?


 
mwolf   (2003-01-18 02:09) [12]

Господа.
Как человек немного работавшим с проблемой блокирования клавы и мыши, могу предложить следущий ход в решении проблемы Alt+Tab и пр. Для этого, после вешания хука, компьютер надо перевести в режим заставки.Делается это следующим образом:
// Включение режима
SYSTEMPARAMETERSINFO(SPI_SCREENSAVERRUNNING, 1, 0, 0);
// Выключение режима
SYSTEMPARAMETERSINFO(SPI_SCREENSAVERRUNNING, 0, 0, 0);
Все системные клавиши будут отключены, а остальные заблокирует ваш хук.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.03.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
6-39456
CASU
2003-01-21 15:31
2003.03.13
Как отобразить процесс передачи данных на сервер?


4-39639
Max2002
2003-01-22 13:19
2003.03.13
Огромное человеческое спаибо msts !!!


14-39469
kofman
2003-02-27 00:05
2003.03.13
На скольно юридически законно покупать программу по почте?


3-39232
John
2003-02-22 21:03
2003.03.13
Добавление изображения в базу


8-39425
Noname_
2002-12-03 10:20
2003.03.13
Глюки в DirectShow





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский