Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Delphi: Общие вопросы > Блокировка клавиатуры и мыши |
Автор: krivenia 29.12.01, 20:18 |
Народ! Помогите, ПЛЗ... Может кто знает как можно заблокировать клавиатуру и мышку? Мне нужн, чтобы в определённое время стали не доступны ни клавиатура ни мышь, как это реализовать? |
Автор: krivenia 30.12.01, 19:43 |
Я знаю, что нужно заблокировать прерывания IRQ1 (клава) и IRQ12 (мышь), но как это сделать в Дельфи? Заранее благодарю... И с Новым Годом! \%))) |
Автор: hlod 31.12.01, 07:13 |
function BlockInput(fBlockIt:LongBool):LongBool; stdcall; external 'USER32.DLL'; fBlockIt- 0 - off 1 - on |
Автор: krivenia 04.01.01, 19:04 |
ОК! Клёво! Но.... Во-первых: эта функция есть в Win98 и выше и нет её в NT, и ко всему прочему прерывания восстанавливаются после нажатия любимой комбинации Ctrl+Alt+Del... И что в этом случае делать? |
Автор: ad_tolya 04.01.01, 22:15 |
Как это нет в NT? Вот так она описана в MSDN... BOOL BlockInput( BOOL fBlockIt // block option ); Импортируй из USER32.DLL А с cntr+alt+del нужно бороться перводом GDI в режим скриин сейвера.. Где то доку потерял по этому пример привести не могу.. Но работает... )) |
Автор: krivenia 12.01.01, 08:38 |
Вот именно в библиотеке USER32.dll в NT и нет такой функции, да и перевод GDI в режим скринсейвера в NT тоже отключён... В 9х - пожалуйста: SystemParametersInfo(SPI_SCREENSAVERRUNNING,1,NIL,0); - для включения; SystemParametersInfo(SPI_SCREENSAVERRUNNING,0,NIL,0); - для выключения. |
Автор: repairman 15.01.01, 12:11 |
Сходи на http://www.sysinternals.com/win9x/98source.shtml Там исходники лежат, с очень похожим назначением, правда либо Ассемблер либо Си, ну это не проблема, ежели знаком с ними, благо Делфи позволяет на Ассемблере писать также легко как на Паскале... ;-)) Делается это перехватом (hook) функций VxD, обслуживающих клаву и мышь... Там, кстати полно всякого "шпионского" софта полезного, позволяющего перехватывать службы, хэндлы, порты, сетевые соединения. Там я нашел программку для перехвата потока COM-порта... долго искал... |