2012-03-17 2 views
4

Я работаю над приложением (написано на C#), которое имеет настройку для запуска в режиме KIOSK. Я просто вызов здесь, что отключает Ctrl + Alt + Del сочетание Event.Отключить сочетание клавиш Ctrl + Alt + Del на windows7

В подобных предыдущих сообщениях нет правильного ответа. Пожалуйста, дайте мне знать о правильном действии. Учитывая, что мой код работает с ключами реестра, чтобы отключить/включить параметры, если вы знаете какой-либо раздел реестра, это будет более полезно.

+0

Возможный дубликат http://stackoverflow.com/questions/6408443/how-can-i-disable-ctrl-alt-del-in-windows-7-programmatically –

+0

http://stackoverflow.com/questions/4234242/disable-ctrl-alt-del-and-shutdown-for-kiosk –

+0

Если он находится в режиме киоска, вы не можете убедиться, что на оборудовании отсутствует один или все клавиши Ctrl, Alt или Del (при условии, что есть клавиатура на всех) –

ответ

9

CTRL + ALT + DEL - это secure attention sequence Windows NT (и его производные, такие как Win7). Это единственная ключевая комбинация, которая гарантированно привлечет внимание ОС. Весь смысл SAS заключается в том, что он не может быть перехвачен или остановлен пользовательскими программами.

Одна из проблем безопасности, которую он адресует, - это ложный экран входа в систему: рассмотрите экран, который выглядит точно так же, как обычный экран входа в Windows. Нельзя сказать, что это подделка, просто взглянув на нее. Но, если у вас есть привычка всегда нажимать CTRL + ALT + DEL перед входом в систему (есть возможность всегда требовать его для законного экрана), нажатие SAS на ложном экране входа в систему вызовет манипулятор задачи или безопасный экран внимания (с выходом из системы, сменой пароля и т. д.). Экран реального входа не делает этого; он просто остается на экране. До тех пор, пока сама ОС не будет заменена или не скомпрометирована, CTRL + ALT + DEL защитит вас от ложных экранов входа в систему. Если пользовательская программа может перехватить SAS, это ничего не стоило бы.

SAS был запечен в дизайне Windows NT с самого начала (это было в первом выпуске в 1993 году), поэтому обойти это будет нелегко. Я уверен, что есть драйверы фильтров для клавиатуры или что-то такое, чтобы перехватить эту последовательность, предназначенную для использования киоска.

+0

Deat Smith, моя точка зрения не является экраном входа. во время выполнения Windows7, если вы нажмете Ctrl + Alt + Del, вы увидите экран, который позволяет вам регистрироваться, блокировать компьютер, изменять пароль и т. д. .... Я хочу отключить эти параметры – mrArmg

+1

Если кто-то сеял ложный экран входа в систему, и вы нажмете CTRL + ALT + DEL, это приведет к тому, что выйдите из него, заблокируйте и т. д. вместо того, чтобы оставаться там. Таким образом, вы знаете, что поддельный экран был поддельным. Если программа может отключить эту функцию, вы не сможете сказать поддельный экран входа в систему из реального. –

2

Невозможно захватить Ctrl + Alt + Del, это так по дизайну во всех системах Windows. Это проблема безопасности, если пользователь нажимает Ctrl + Alt + Del, он или она должны быть уверены, что на нее отвечает операционная система, а не какое-то приложение (возможно, троянский пароли).

Предполагаю, что для захвата Ctrl + Alt + Del вам нужно будет написать драйвер устройства.

Редактировать: также смотрите This answer. Я не пробовал, но вопрос довольно схож.

0

Можно выбрать комбинацию Ctrl + Alt + Delete, но не отключать ее. Я попытался отключить его с помощью SetWindowsHookEx и WH_KEYBOARD_LL, и вы можете успешно получить уведомление, когда нажата клавиша Ctrl + Alt + Delete, но вы ничего не можете с этим поделать.

-1

Вам нужно будет сделать некоторые P/Invoke, в user32.dll, есть метод, называемый SystemParametersInfo, проверить эти ресурсы для получения дополнительной информации

http://pinvoke.net/search.aspx? поиск = SystemParametersInfo & имен = [Все]

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724947%28v=vs.85%29.aspx

я сделал что-то подобное долгое время назад, но не больше не имеют код, хотя я нашел это (это в VB6), но оно не должно быть слишком сложным, чтобы получить идею и перевести.NET

http://www.developerfusion.com/code/1021/how-to-disable-ctrlaltdel/

+0

Этот метод работает только на Win9x, OP находится в Windows 7 –

1

Хотя это вроде возможно, это не простая задача, а не то, что может быть сделано в C#. This Article покажет вам, как отключить Ctrl + Alt + Delete с помощью редактора групповой политики. Чтобы вручную отключить комбинацию, вам придется либо написать собственный драйвер клавиатуры, либо написать свой собственный заглушка GINA (графическая идентификация и аутентификация).

+0

Групповая политика изменяет ключи реестра, я уверен в этом. но я не мог найти правильный ключ для обработки. – mrArmg

+0

HKCU \ Software \ Microsoft \ Windows, \ CurrentVersion \ Политики \ System \ DisableTaskMgr = DWORD: 1 – Icemanind

Смежные вопросы