![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отрубить клаву, мышь и монитор. [D7, WinXP]
WELLiON © (2004-08-25 01:10:00)Можно ли это сделать силами винапи из-под ХР? Если можно, то не поделитесь ли Вы со мной секретом? Заранее благодарю.
Woolen (2004-08-30 15:19:00) [1]
> Чтобы заблокировать клаву и мышу достаточно в проге ввести
> следующую команду: BlockInput True, а когда захотите вернуть
> обратно - BlockInput False.
> но рекомендую для эксперимента пользоваться таймером на
> возврат, потому что после запуска этой функции ничего больше
> сделать с компом не удасться.
Удастся и еще как? Я делал с полгода назад такой блок. Работает то ли Ctrl + Alt + Delete, то ли Escape, то ли еще что-то, но чем-то эта штука сбрасывается. Сейчас пробовать не буду, но однозначно что-то есть...
Woolen (2004-08-30 15:19:00) [2]
> Чтобы заблокировать клаву и мышу достаточно в проге ввести
> следующую команду: BlockInput True, а когда захотите вернуть
> обратно - BlockInput False.
> но рекомендую для эксперимента пользоваться таймером на
> возврат, потому что после запуска этой функции ничего больше
> сделать с компом не удасться.
Удастся и еще как! Я делал с полгода назад такой блок. Работает то ли Ctrl + Alt + Delete, то ли Escape, то ли еще что-то, но чем-то эта штука сбрасывается. Сейчас пробовать не буду, но однозначно что-то есть...
Amoeba (2004-08-26 18:20:00) [3]Вот, нашел:
WinExec('rundll32 mouse,disable',1);
WinExec('rundll32 keyboard,disable',1);
Amoeba (2004-08-26 18:14:00) [4]По поводу клавиатуры, мыши и прочего была информация, если ничего не путаю, где-то так года 3 назад на http://www.delphikingdom.comв разделе "Круглый стол".
Brodyga (2004-08-26 11:37:00) [5]Есть апи функция, которая блокирует работу мыши и клавы:
"Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long"
Чтобы заблокировать клаву и мышу достаточно в проге ввести следующую команду: BlockInput True, а когда захотите вернуть обратно - BlockInput False.
но рекомендую для эксперимента пользоваться таймером на возврат, потому что после запуска этой функции ничего больше сделать с компом не удасться. Например такой вариант:
private sub form_load()
timer1.interval = xxxxx
timer1.enabled = true
blockinput true
end sub
private sub timer1_timer()
blockinput false
end sub
WELLiON (2004-08-25 18:48:00) [6]Спасибо. Про монитор работает как часы, а клаву с мышью сейчас посмотрю.
FreeMan1 (2004-08-25 18:31:00) [7]низкоуровневй хук на мышку и на монитор
http://ogoncharenko.narod.ru/DelphiMain/DelphiFaq/116.htm
WELLiON (2004-08-25 17:32:00) [8]А клаву с мышью? Хотя спасибо и за монитор.
Алхимик (2004-08-25 01:22:00) [9]Отрубают силами, вернее посредством топора. :)
//Погасить монитор:
SendMessage(Application->Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 0);
//Перевести монитор в состояние Low Power:
SendMessage(Application->Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 1);
//Перевести монитор в состояние Power Off:
SendMessage(Application->Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 2);
//Активировать монитор:
SendMessage(Application->Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1);