Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

alt+ctrl+del [Win95/98, NT4]


Страницы:   1 2

Maksss ©   (2004-02-18 18:31:00) 

не подскажите как перехватить альт+контолдел в 98\нт но не спрятать приложени а запуститься как это делает таск менеджер
т.е. приостановить(в 98) все процесы и показать свою форму


MyNick   (2004-03-24 10:15:00) [1]

Не проще запретить винде перезапись системных файлов и сделать подмену файла TASKMGR.EXE ?


DeadMeat   (2004-03-01 14:44:00) [2]


Позволяет, еще как!

Это шутка или как...??


dr Tr0jan   (2004-03-01 08:54:00) [3]

2 Игорь Шевченко ©   (19.02.04 12:18) [9]

> >SystemParametersInfo (97, Word (True), @OldVal, 0);

SPI_SETSCREENSAVERRUNNING ?
И что, позволяет _перехватить_ Ctrl+Alt+Del ?


Позволяет, еще как! только это дело стопудово канает в Win98. Не знаю в чем глюк, но эта шняга не отрубает [Tab].


Alexander666   (2004-03-01 06:55:00) [4]

Кстати, в НТ-системах про Ctrl-Alt-Del еще и Рихтер упоминал. Я вот спрашивал тут про работу с RIT-ом, так как именно там обрабатываются все эти комбинации. Ответ был отрицательным, да я впрочем и сам ничего не нашел. Единственный выход, на мой взгляд, - работа с GINA.


DNS   (2004-02-29 14:00:00) [5]

[16] можно отключить защиту файлов...


DeadMeat   (2004-02-29 13:29:00) [6]


>  и получаем то что требовалось

Я думаю, что даже близко это не то, что требовалось...

не подскажите как перехватить альт+контолдел в 98\нт но не спрятать приложениа запуститься как это делает таск менеджер


DNS   (2004-02-29 13:19:00) [7]

// Убираем процесс из Ctrl+Alt+Del.
Function RegisterServiceProcess(dwProcessID, dwType : DWord): DWord;
stdcall external 'Kernel32.dll' name 'RegisterServiceProcess';

procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterServiceProcess(GetCurrentProcessId(), 1);
//1- скрыть , 0 - показать
end;


DNS   (2004-02-28 23:50:00) [8]

[30] очень редко вижу не ленивых админов, которые еще и думают что пользователи таким занимаються а не в инете лазят %)
Вообще в XP получаеться можно от него избавиться навсегда... Одна проблема решена. Теперь к 98 - тут все сложнее в 98 самый простой способ - поиск окна, но он и самый не надежный :-(
Но в 98 тоже есть фокус - можно спрятать свое окно из Ctrl-Alt-Del, а в XP нельзя. Комбинируем оба метода и получаем то что требовалось (или почти то что надо).


VMcL   (2004-02-27 12:32:00) [9]

[31]

Это слишком правильно, чтоб с этим можно было не согласиться ))


Anatoly Podgoretsky   (2004-02-27 11:37:00) [10]

В Win9x это не поможет


VMcL   (2004-02-27 11:23:00) [11]

>>DNS  (27.02.04 08:22) [29]
>некоторые локеры в инте кафе так и убиваються

Кто мешает админу в Local/Domain Policies запретить запись в
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\
?


DNS   (2004-02-27 08:22:00) [12]

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr
Оба поставить в 1 и Таск мэнеджер в XP (на других не пробовал) запустить невозможно, конечно если не знать оба ключя и не уметь писать REG файлы (некоторые локеры в инте кафе так и убиваються - DisableRegistryTools 0 и включаем мэнеджер ==> убить процесс :)


Gero   (2004-02-24 17:25:00) [13]

> Игорь Шевченко ©   (24.02.04 16:15) [27]

Не буду с Вами спорить.

P.S. Руссинович с Соломоном тоже могли ошибаться...


Игорь Шевченко   (2004-02-24 16:15:00) [14]

Gero ©   (23.02.04 00:53)

Читаем Руссиновича с Соломоном, где русским по белому написано: SAS на прикладном уровне не перехватывается.


Anatoly Podgoretsky   (2004-02-23 09:48:00) [15]

Ну там не перехва этих клавиш, а вызов системой новеловского клиента, как gina.dll


KSergey   (2004-02-23 09:39:00) [16]

> Игорь Шевченко ©   (23.02.04 00:12) [21]
> Про Novell Client я слышал и охотно верю, что там это сделали.
> Но боюсь, что автор вопроса все-таки несколько меньшим опытом
> обладает...

Ну дело, видимо, все же не в опыте, а в наличии документированного механизма, правда?
А я лично так до сих пор и не могу понять: ест ьон этот документированный механизм или нет...
Во всяком случае упомянутый новеловский клиент видимо вклинивается как-то отлично от упомянутого Almaz ©   (23.02.04 01:45) [24] механизма... Во всяком случае в данной ветке реестра ничего нет (на сашине, где он установлен). Или есть еще вариант? Или они прямо нагло подменяют MSGina.dll своей?

to Almaz ©   (23.02.04 01:45) [24]

Спасибо, так и запишем! ;)

PS
Я же говорил, что надо Gina.dll копать! ;)


Almaz   (2004-02-23 01:45:00) [17]


> Перехват ctrl+Alt+Del на NT-системах не проходит.
>


Просто перехватить чем-то типа хука конечо не выйдет, но имея права администратора можно следующее: пишете DLL - прозрачную копию MSGina.DLL, т.е. экспортируете все ее функции и на их вызов вызываете соответствующие функции из MSGina. Затем перехватываете WlxLoggedOnSAS- это обработчик SAS при залогиненном пользователе и пишете примерно следующее:


function Gina_WlxLoggedOnSAS(pWlxContext: Pointer;
 dwSasType: DWORD; pReserved: Pointer): Integer; stdcall;
begin
 if MessageBox(0, 'Обработать нажатие CTRL+ALT+DEL ?', 'Обнаружено SAS',
   MB_YESNO or MB_ICONQUESTION) = IDYES then
   Result := WlxLoggedOnSAS(pWlxContext, dwSasType, pReserved) else
   Result := WLX_SAS_ACTION_NONE;
end;


Затем копируете свою DLL в %WINNT%/SYSTEM32/ и в реестре (вот тут нужны права администратора) создаете в ветке HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogonзначение GinaDLL, в которое и пишете название файла своей DLL. Перезагружаетесь и получаетет требуемый эффект.

Удачи.

Удачи.


Gero   (2004-02-23 00:53:00) [18]

> Игорь Шевченко ©   (23.02.04 00:12) [21]

Да, но в [1] Вывсе же погорячились.


Gero   (2004-02-23 00:53:00) [19]

> Игорь Шевченко ©   (23.02.04 00:12) [21]

Да, но в [1] вы все же погорячились.


Игорь Шевченко   (2004-02-23 00:12:00) [20]

Gero ©   (23.02.04 00:00)

Про Novell Client я слышал и охотно верю, что там это сделали.
Но боюсь, что автор вопроса все-таки несколько меньшим опытом обладает...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо