Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как заблокировать клавиатуру и мышь?  (Прочитано 48173 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« : 26-05-2004 04:06 » 

собственно сабж....
нужно блокернуть в XP клаву и мышь...
Это реально?
Записан

Да да нет нет все остальное от лукавого.
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #1 : 26-05-2004 05:41 » 

Делай твое приложение как ScreenServer. Все сообщения от мыши и клавы идут на твою программу. Правда я не знаю, как работают HOOK, когда работает ScreenServer. Надо эксперементировать. А убивать драйвера, это чревато последствием.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #2 : 26-05-2004 07:09 » 

PSD,  я думаю захучить можно. Но какие будут потом способы снять блокировку? Или reboot?
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Александр
Опытный

kz
Offline Offline
Пол: Мужской
Угадай кто?


WWW
« Ответ #3 : 26-05-2004 14:55 » 

PSD, сейчас не помню. Но там както через rundll32 с ключем  прописывается, но для включения нужно перезагрузка.
Записан

Бороться и искать, найти и перепрятать.
Daniloff
Помогающий

ru
Offline Offline

« Ответ #4 : 28-05-2004 14:40 » 

Проблема действительно архиважная, и очень жаль, что она пока не решена. Есть интересная программа - NetOp School - и в ней опция - attention!
Если ее нажать, блокируется мышь и клава, причем последняя даже не реагирует на caps,num,scroll - лампочки не включаются, а какие горели - не выключаются. А если запустить сейвер, он не блокирует три клавиши. И вообще, ни один хук их не блокирует - проверял.
Записан
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 31-05-2004 14:15 » 

Daniloff
C блокировкой 3-х клавиш сложно. Нужно писать свою заглушку стандартной библиотеки (gina.dll, по-моему), которая будет вызывать функции стандартной gina.dll, а 3-ри любимые кнопки будет блокировать.
В общем суть - в подмене стандартной библиотеки, а какой - не вспомню точно... В Соломоне и Руссиновиче (Inside Windows 2000) это описано подробно
Записан
Daniloff
Помогающий

ru
Offline Offline

« Ответ #6 : 01-06-2004 12:27 » 

Kivals, изучал я примерчик этой gina. По-моему, не то! Я говорю о программе, которая ничего не перехватывает, просто блокирует устройство, такое впечатление, что она программирует контроллер прерываний и маскирует прерывания от клавы и мыши. Надо будет попробовать ковырнуть ее отладчиком! Когда я подключаюсь radmin-ом к блокированной машине, я могу послать туда ctrl-alt-del, а локально - нет!
Записан
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #7 : 01-06-2004 14:19 » 

Послать или перехватить? Это разные вещи....
И даже если ты распознаешь Ctrl+Alt+Del, то блокировать ты их не можешь (VMware тоже распознает, но не перехватывает их)
А "послать" Ctrl+Alt+Del - это вызвать процедуру из gina, кот. привязана к этой комбинации
(все ИМХО естественно)
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #8 : 01-06-2004 15:07 » 

Ребята я знаю еще две замечательные клавиши, которые программным путем никак не закроешь. Одна клавиша "RESET" вторая "Шнур питания". Скажите зачем морочить мозги, переписывая библиотеки Виндовса. Чтобы парню сделать одну функцию в программе (правда зачем не понимаю) ему нужно потратить 99% времени при написании всей программы. Где резон. Есть еще три аргумента против. Первый, переносимость программ. Второй, как известно мелкософте любят использовать скрытые недокументированные функции. Где гарантия, что Вы отразите их всех в своей новой библиотеке. Третий, как Вы собираетесь инсталировать свою библиотеку. Виндоус будет недоволен. Я более склоняюсь к СкреенСерверу. По крайней мере, три заветные клавиши виндовс посылает на скреенСейвер. Заблокируйте свой сервер паролем. И запустите его. И попробуйте нажать три заветные клавиши. В крайнем случае компьютер сделает RESET.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 01-06-2004 15:46 » 

1. Ресет физически отключается внутри корпуса.
2. Отключение питания пресекается административными мерами, когда нужно. Можно (при необходимости) и шнур питания завести внутрь корпуса и внутрь панели с розетками и опечатать все это...
3. Возможно да - некорректно поставлена задача, и ему совсем не то нужно. Потому и пытаюсь убедить, что это сложно делается Улыбаюсь
4. Переносимость - старше Вин2000, хотя для кажой новой версии придется доделывать библиотеку (см. п. 5)
5. Переделка gina - документирована
6. Установка тоже документирована
7. Ну и что, что своим паролем защищен? по Ctrl+Alt+Del и вводе пароля пользователя Винда убьет процесс скрин-сейвера, перехватил он эти клавиши или нет
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #10 : 01-06-2004 15:54 » 

Kivals, В том то и дело, что виндовс не убивает скренсервер. Это скринсервер закрывается. При этом говорит Виндовсу, чтобы он переходил в обычный режим. И пароль вызывается в самом скрине. Если хочеш, могу переслать статью (найденую мной в инете) как делать скрин. И на счет физического отключения. Я специально подчеркнул - программно.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #11 : 01-06-2004 15:57 » 

Давай ссылку на статью.
А как ты программно выдернешь провод или нажмешь ресет? поясни Улыбаюсь (с физическим воздействием на комп - физическими методами и бороться)
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #12 : 01-06-2004 16:54 » 

Вот ссылка http://roinet.narod.ru/op/DocumentsOpen/screensaver/screensaver.htm

А это цитата из этой статьи:

Цитата
Имейте в виду, что важно уведомлять Windows, что это - хранителя экрана через SystemParametersInfo (это выводит из строя Ctrl-Alt-Del чтобы нельзя было вернуться в Windows не введя пароль)
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #13 : 01-06-2004 17:28 » 

Finch
Есть подозрение, что это относится к Вин9Х. Проверить не могу, так что - ИМХО
Записан
Daniloff
Помогающий

ru
Offline Offline

« Ответ #14 : 04-06-2004 10:14 » 

Kivals, подтверждаю твое подозрение. А задачку-то я решил! Когда сделаю рабочий пример, дам ссылку.

Finch, вот мне знакомый какую байку рассказал. Администрировал он сеть в одной конторе и велел работницам сервер НЕ ВЫКЛЮЧАТЬ. Они выключают. Он кнопки "сброс" и "питание" отключил - выдергивают шнур. Матерясь, поднимая сервер приклеивает вилку к розетке термоклеем. На следующий день ШНУР ВЫДЕРНУТ ИЗ СИСТЕМНОГО БЛОКА (!!!) :twisted:
Записан
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #15 : 04-06-2004 11:31 » 

Daniloff
Интересно. Жду пример....
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #16 : 04-06-2004 17:53 » 

Daniloff, Я со своей стороны могу сказать, что я раз 5 переустанавливал Lexicon у одной пожилой дамы. У Lexicon была такая фича, он брал на редактирование Exe-шные файлы. Естественно коцал их по страшному. И когда дама видела на экране абру-кадабру, она производила сброс программы. Он естественно спрашивал ее хотит она записать. Ну и она отвечала ДА. И эти безобразия прекратились когда я поставил на сам файл read-only. Как она умудрялась запускать так - незнаю. Но думаю примерно такой строкой Lexicon Lexicon.  Поэтому Всегда нужно ставить зашиту на дурака. Но он всегда найдет дорогу сломать. Отлично
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Daniloff
Помогающий

ru
Offline Offline

« Ответ #17 : 06-06-2004 17:53 » 

Вот, смотрите, если что - спрашивайте.
Записан
Anonymous
Гость
« Ответ #18 : 19-07-2004 20:44 » 

Народ как мне отключить всего лишь DELETE :? и всё что может вызвать удаление ? ...
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #19 : 20-07-2004 14:07 » 

Гость, А где ты хочеш отключить определенные функции. По конкретнее пожайлуста. Просто способы зависят от задачи.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #20 : 21-07-2004 11:21 » 

Daniloff
Исходники пока не смотрел, запустил ехе-шник - Ctrl+Alt+Del он не блокирует Жаль И в процессах его не видно.
Win XP En SP1a, пользователь в админ.группе, но не встроенный админ
Записан
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #21 : 11-08-2004 07:38 » 

В 98-ой точно работает:
"rundll32 shell32,Control_RunDLL" - Выводит "Панель управления"
"rundll32 shell32,OpenAs_RunDLL" - Выводит окошко - "Открыть с помощью.."
"rundll32 shell32,ShellAboutA Info-Box" - Покозать окно "About Windows"
"rundll32 shell32,Control_RunDLL desk.cpl" - Открыть "Свойства Экрана"
"rundll32 user,cascadechildwindows" - Сортировка окон "Каскадом" (Как в Win 3.x)
"rundll32 user,tilechildwindows" - Сместить Окна в низ
"rundll32 user,repaintscreen" - Обновить рабочий стол
"rundll32 shell,shellexecute Explorer" - Запустить проводник Windows.
"rundll32 keyboard,disable" - Вырубить Клавиатуру! (Вот Это я понимаю Заподло!) :!:
"rundll32 mouse,disable" - Вырубить Мышь! (У Шефа Будет припадок:)))
 :!: "rundll32 user,swapmousebutton" - Поменять Местами клавиши Мыша! (Во мля! и этого Дядя
Билли не забыл!)
"rundll32 user,setcursorpos" - Сместить курсор крысы в левый верхний угол
"rundll32 user,wnetconnectdialog" - Вызвать окно "Подключение сетевого диска"
"rundll32 user,wnetdisconnectdialog" - Вызвать окно "Отключение сетевого диска"
"rundll32 user,disableoemlayer" - Спровоцировать сбой!!! (Знаю, сам сразу не поверил, но
это FUсKт...)
"rundll32 diskcopy,DiskCopyRunDll" - Показать окно "Copy Disk"
"rundll32 rnaui.dll,RnaWizard" - Вывод окна "Установка Связи", с ключем "/1" - без окна
"rundll32 shell32,SHFormatDrive" - Окно "Форматирование: Диск3,5(А)" вызвать
"rundll32 shell32,SHExitWindowsEx -1" - Перегрузить Explorer
"rundll32 shell32,SHExitWindowsEx 1" - Выключение Компутера.
"rundll32 shell32,SHExitWindowsEx 0" - Завершить Работу Текущего Пользователя
"rundll32 shell32,SHExitWindowsEx 2" Windows-98-PC boot
"rundll32 krnl386.exe,exitkernel" - выход из Windows без любых сообщений/вопросов
"rundll rnaui.dll,RnaDial "MyConnect" - Вызвать окошко "Установка связи" с соединением
"MyConnect"
"rundll32 msprint2.dll,RUNDLL_PrintTestPage" - выбрать в появившемся меню принтер и
послать, а него тест
"rundll32 user,setcaretblinktime" - установить новую частоту мигания курсора
"rundll32 user,setdoubleclicktime" - установить новую скорость двойного нажатия
"rundll32 sysdm.cpl,InstallDevice_Rundll" - установить non-Plug&Play оборудование
Эдик
Записан

Удачного всем кодинга! -=x[PooH]x=-
sss
Специалист

ru
Offline Offline

« Ответ #22 : 11-08-2004 08:03 » 

GROUP POLICY:

1) USER CONFIGURATION -> ADMINISTRATIVE TEMPLATES -> SYSTEM -> LOGON/LOGOFF -> DISABLE TASK MANAGER

2) USER CONFIGURATION -> ADMINISTRATIVE TEMPLATES -> SYSTEM -> LOGON/LOGOFF -> DISABLE LOCK COMPUTER

3) USER CONFIGURATION -> ADMINISTRATIVE TEMPLATES -> SYSTEM -> LOGON/LOGOFF -> DISABLE LOGOFF

И Т. Д.
Записан

while (8==8)
Daniloff
Помогающий

ru
Offline Offline

« Ответ #23 : 28-12-2004 13:43 » 

Сайтец мой прикрыли. Вот ищите тут: http://attiny.netfirms.com/locker.html
Внимание! Обязательно наличие файла giveio.sys в рабочей папке программы!
Программа для NT-2K-XP.
И еще. Архив rar формата с расширением zip. Открывать раром Улыбаюсь
« Последнее редактирование: 10-01-2005 09:21 от Daniloff » Записан
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #24 : 17-10-2005 18:36 » 

Цитата
"rundll32 user,disableoemlayer" - Спровоцировать сбой!!! (Знаю, сам сразу не поверил, но
это FUсKт...)
Че-то не фурычит. Похоже на еще один миф о Windows.
Записан

ещё один вопрос ...
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #25 : 18-10-2005 09:01 » 

ну, видимо, раз на раз не приходится... я точно знаю что 98-ая вылетала в дедскрин если обратиться/запустить c:\con\con (попробуй набрать в строке запуска - предварительно сохранив несохраненные данные Улыбаюсь )
Записан

Удачного всем кодинга! -=x[PooH]x=-
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #26 : 18-10-2005 13:30 » 

что за
Цитата
c:\con\con
??
Цитата
ну, видимо, раз на раз не приходится... я точно знаю что 98-ая вылетала в дедскрин
У меня сейчас, к сожалению, не стоит Win9x, только XP, но дело в том, что такой функции нету, VC ругается, а жаль, было бы приятно посмотреть.
« Последнее редактирование: 18-10-2005 13:33 от nikedeforest » Записан

ещё один вопрос ...
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #27 : 18-10-2005 14:06 » 

Цитата
VC ругается, а жаль,
на что он ругается? эти команды можно просто из командной строки запускать или ярлык сделать.
Цитата
не стоит Win9x, только XP
"C:\con\con" (да собственно многое из выше приведенного) работает только под 98 - проверено (и не раз)
« Последнее редактирование: 18-10-2005 14:08 от PooH » Записан

Удачного всем кодинга! -=x[PooH]x=-
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #28 : 18-10-2005 16:39 » 

Цитата
на что он ругается?
На disableoemlayer() он ругается.
Записан

ещё один вопрос ...
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines