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) все процесы и показать свою форму


Gero   (2004-02-23 00:00:00) [21]

> Игорь Шевченко ©

Слышали про Novell Client? Я когда-то работал за чужим компом (Win2k), и очень удивился, когда нажав ctrl+alt+del, вместо привычного окошка увидел окно Novell Client.
Если ребята из Novell сделали, чем мы хуже?


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

Gero ©   (22.02.04 23:16)

WinLogon таки перехватывает...


Gero   (2004-02-22 23:16:00) [23]

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

Проходит. Я видел своими глазами.


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

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

Запустить свой TaskManager можно, по крайней мере, в NT 4, но толку-то ? Остальные процессы все равно не остановятся...


DVM   (2004-02-22 21:47:00) [25]


> В XP пробовал. В NT нет. В NT такое не проходит?

Win XP Pro не проходит. Срабатывает автоматическое восстановление системных файлов. Иногда прямо на глазах меняется.


alex134   (2004-02-22 21:06:00) [26]


> DVM ©   (22.02.04 19:14) [13]
>
> > Зачем код? Это руками все делают, CTRL+C  CTRL+V
>
> Ты пробовал или это предположение? Попробуй найди TaskMan.exe
> и переименуй/замени. Потом нажми Ctrl+alt+del и полюбуйся
> на то, что ничего не изменилось.

В XP пробовал. В NT нет. В NT такое не проходит?


Igoryok   (2004-02-22 19:16:00) [27]

Я не понимаю - отличный вопрос про реестр почему бы Вам не покапаться и проверить, Вас не заколебали эти прыщавые вирусологи???


DVM   (2004-02-22 19:14:00) [28]


> Зачем код? Это руками все делают, CTRL+C  CTRL+V

Ты пробовал или это предположение? Попробуй найди TaskMan.exe и переименуй/замени. Потом нажми Ctrl+alt+del и полюбуйся на то, что ничего не изменилось.


KSergey   (2004-02-22 10:35:00) [29]

А Gina.DLL не позволяет это делать? Или там только логин? Вроде как раз она это и есть... Я ошибаюсь?


juiceman   (2004-02-21 12:12:00) [30]


> Игорь Шевченко ©   (19.02.04 11:08) [7]
> juicenman   (18.02.04 21:39)
>
> Пример в студию - я тоже хочу долго посмеяться :) Особенно
> для Win2k

Зачем код? Это руками все делают, CTRL+C  CTRL+V


NightAngel   (2004-02-21 00:47:00) [31]

> т.е. приостановить(в 98) все процесы и показать свою форму

program NewCloseAPC;

uses
 Windows;

procedure KERNEL32_ORD_0001(Var1,Var2,Var3:dword); stdcall;
         external 'Kernel32.dll' index 1;

const
 REBOOT_VXDID = $090000;
 R0TCB_OFFSET = $00004C;
 TitleMessage : PChar = 'Тест!';
 TextMessage  : PChar = 'Нажата комбинация CTR+ALT+DEL!';

procedure NewCloseProgramAPC;
begin
 KERNEL32_ORD_0001(REBOOT_VXDID+1,3,0);

// Здесь можно создать свой аналог диспетчера задач
 MessageBox(0,TextMessage,TitleMessage,MB_OK or MB_SYSTEMMODAL);

 KERNEL32_ORD_0001(REBOOT_VXDID+1,0,0);
end;

asm
 push ebp
 mov ebp, esp
 add esp, -8
 call GetCurrentThread
 lea ecx, dword ptr ss:[ebp-8]
 push ecx
 push fs
 push eax
 call GetThreadSelectorEntry
 test eax,eax
 je @Failed
 mov ah, byte ptr ss:[ebp-1]
 mov al, byte ptr ss:[ebp-4]
 shl eax, 16
 mov ax, word ptr ss:[ebp-6]
 push [eax+R0TCB_OFFSET]
 push offset NewCloseProgramAPC
 push REBOOT_VXDID
 call KERNEL32_ORD_0001
 push 0
 push 0
 push REBOOT_VXDID+1
 call KERNEL32_ORD_0001
@Loop:
 push true
 push infinite
 call SleepEx
 jmp @Loop
@Failed:
 push eax
 call ExitProcess
end.


Это только для Win9x/ME. Для NT-платформ всё гораздо сложнее и недокументировано.


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

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

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


dr Tr0jan   (2004-02-19 12:12:00) [33]


var
 OldVal : LongInt;

{Off}
SystemParametersInfo (97, Word (True), @OldVal, 0);

{On}
SystemParametersInfo (97, Word (False), @OldVal, 0);


Игорь Шевченко   (2004-02-19 11:08:00) [34]

juicenman   (18.02.04 21:39)

Пример в студию - я тоже хочу долго посмеяться :) Особенно для Win2k


juicenman   (2004-02-18 21:39:00) [35]

Долго смеялся )))
2 maksss:
В ХП/2000 простая подмена таскменеджера;
в 98ой ставь хук на окно таскменеджера;


Vit@ly   (2004-02-18 20:12:00) [36]

Похоже


clickmaker   (2004-02-18 20:08:00) [37]


> Vit@ly ©   (18.02.04 20:05) [3]
> Очен боится, а мне кажется просто не понимает что такое
> альт+контолдел

Какой-то навороченный музыкальный инструмент, наверно?


Vit@ly   (2004-02-18 20:05:00) [38]

Очен боится, а мне кажется просто не понимает что такое альт+контолдел, так же как и я :)


Gero   (2004-02-18 20:00:00) [39]

> Игорь Шевченко ©   (18.02.04 18:55) [1]

Почему Вы всегда на подобные вопросы так отвечаете? Боитесь вирусописателей? Ведь на самом деле это можно сделать


Игорь Шевченко   (2004-02-18 18:55:00) [40]


> как перехватить альт+контолдел


Никак.


Страницы:   1 2

Наверх

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