![]() |
Деактивировать Ctrl+Alt+Del.
Как мне деактивировать Ctrl+Alt+Del в Windows2000? :молись:
|
в какой момент?
и зачем? |
При старте программы - было бы неплохо все Systemkeys деактивировать.
Для чего? Программа стартует maximized и не хотелось бы, что бы кто-нибудь мог её закрыть или даже minimieren. Form можно тогда только через Passwort закрыть. |
как я себе представляю надо свой обработчик написать для данных системных сообщений. посмотри в Msdn главу по системным сообщениям.
ссылка по данной теме (Delphi): http://www.swissdelphicenter.ch/en/showcode.php?id=1212 |
Это сделать НЕВОЗМОЖНО. Почитай про поток необработанного ввода (raw input thread, RIT).
Джефри Рихтер. Создание эффективных Win32-приложений. Цитата:
|
Ето не совсем так - посмотри http://www.sources.ru/cpp/system/ctr...el_winxp.shtml . В Windows 2000 толыко ctrl-alt-del пока не полу4ается.
|
romanovi4
См. сообщение автора: Цитата:
|
Не знаю, насчет не возможно, но когда сдаешь экзамены по Microsoft или Novell то там точно эти магические три клавиши не работают !!!
А то народ бы со своими сидюками сдавался... Камеры, которые в комнате это так для понта |
Само нажатие комбинации отлавливает ядро, так что тут ничего не поделать, но вот обработчик находится в GINA.dll, а эту длль можно написать самому и заменить =)
|
Malenkaya podskazka: screensaveri disablyat Ctrl+Alt+Del. Oni delajut eto (na skolko ya pomniu) cherez SystemParametersInfo(), uzaetsya SPI_SCREENSAVERRUNNING.
|
А ты попробуй перебор окон: через их HANDLE находиш заголовоки окон, затем окно с заголовком "Диспечер задач Windows" закрываешь из своей программы.
|
Цитата:
|
Всё же не понимаю, зачем запрещать пользователю закрывать приложение.
|
Winboost
|
romanovi4 , на чем пишешь?
|
Встретил такое вот решение (сам не пробовал):
Это можно сделать при помощи функции API SystemParametersInfo, которая позволяет узнать, либо установить параметры операционной системы, такие как установки клавиатуры, дисплея, звука и т.д. Она используется в Панели Управления. Синтакс функции следующий: BOOL SystemParametersInfo( UINT uiAction, // параметр, который нужно узнать или установить UINT uiParam, // зависит от действия PVOID pvParam, // зависит от действия UINT fWinIni // флаг обновления информации о пользователе (user profile) ); Значение каждого параметра объясняется в Win32 Developer's Reference. Теперь, чтобы сделать то, что мы хотим, вызываем следующую прцедуру: procedure DisableCtrlAltDel; var i : integer; begin i := 0; SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @i, 0); end. Аналогично можно отключить Alt-Tab. Для этого нужно задать SPI_SETFASTTASKSWITCH в качестве первого параметра функции. |
Цитата:
Это для Win 95 - win ME . В линейке NT такое не пройдет , как и registerserviceproces (это для скрытия процеса). Но выключит Ctrl-Alt-Delete в NT можно . Только тот кто знает не хочет говорить это , т.к. считают что это нужно для троянов :( Впрочем все при таком вопросе ссылаются на книгу Рихтера. ( ее выше писали) . |
Ему нужно вовсе не то, что вы пишите...
Незнаю как с этим в Win2000, но для WindowsXP я делал так... AnsiString A = "c:\\winxp\\system32\\taskmgr.exe"; CreateFile(taskmgr.c_str(),GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATT RIBUTE_NORMAL,NULL); Т.е. если даже Винда попытается открыть Диспетчер Задач, то не сможет получить к нему доступ! |
|
Спасибо са Help. Я Работаю под VB.Net. Насколыко я понял - надо переписыват GINA.
|
| Часовой пояс GMT +4, время: 02:32. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.