2010-11-05 2 views
4

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

Спасибо!

+1

Что вы действительно пытаетесь сделать? Вы пытаетесь выяснить, заблокировал ли пользователь рабочую станцию? – selbie

+0

Любой конкретный язык программирования? –

+0

Возможный дубликат [Как я могу обнаружить Ctrl-Alt-Del до или после того, как ОС обнаружит его?] (Http://stackoverflow.com/questions/2090930/how-can-i-detect-ctrl-alt-del -e-before-or-after-the-os-detects-it) –

ответ

0

Не кажется, что есть простой способ получить уведомление SAS, все статьи, которые я нашел, касались замены GINA.

Вы можете взглянуть на эти:

Если вы хотите, чтобы выяснить, имеет ли пользователь запер свою рабочую станцию, вы должны взглянуть на WTSRegisterSessionNotification вместе с WM_WTSESSION_CHANGE.

1

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

Off верхней части моей головы , Я бы запускал таймер на фоне вашего приложения, и каждый раз, когда срабатывает таймер, проверьте, не были ли нажаты клавиши Ctrl, Alt и Удалить.. Для этого вам нужно будет использовать GetAsyncKeyState из user32.dll. Я бы дал вам образец кода, но я не уверен, какой язык вы используете. Играйте с интервалом времени, чтобы посмотреть, что нужно для баланса производительности, но все же работайте.

+1

Существует пример VB с http://social.msdn.microsoft.com/Forums/en/vbgeneral/thread/77a366f9-46a9-49e1- 9665-56a3258ba39b. –

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