Programowanie w języku Delphi » FAQ

Jak usunąć moją aplikację z listy znajdującej się po naciśnięciu klawiszy Ctrl Alt Del

W sekcji "Interface" dodaj linię:

function RegisterServiceProcess(dwProcessId,dwType:dword):
Integer;stdcall;external 'kernel32.dll'


Teraz możesz napisać:

RegisterServiceProcess(GetCurrentProcessID, 1);

Uwaga: Funkcja ta występuje jedynie w systemach Win9x. Na innych systemach program wyświetli komunikat, że funkcji nie ma w pliku kernel32.dll i w najgorszym wypadku program w ogóle się nie uruchomi!! Dlatego jeżeli to tylko możliwe należy dołączać tą bibliotekę dynamicznie.

7 komentarzy

pinokio999 2008-11-21 22:39

można to jakoś zrobić. Gadałem kiedyś o tym z jakimś hakerem, i z tego co pamiętam<mogę się już mylić> trzeba jakoś zmienić chyba identyfikator odpowiedniego programu systemowego, podpisać się jego identyfikatorem i tak dalej. Dokładnie nie wiem. Ale po tej operacji nie było zupełnie żadnej zmiany w magagerze, nie widać żadnego nowego procesu, nawet pod inną nazwą.

migajek 2004-12-26 15:13

Nie, nie bedzie dzialalo na wszystkich windach,ale mozesz sprawdzic czy udalo sie znalezc adres funkcji i jak nie to sie wycofac z dalszej dzialalonsci. Bo jak zrobisz statycznie (jak podal Adam) to w np. XPku wywali ze "program xxxxx.exe jest polaczany z brakujacym exportem kernel32.dll:RegisterServiceProcess"

nolab 2004-11-07 13:08

jak dolacze kernel32.dll dynamicznie to bedzie to dzialalo na wszystkich windach ..??

sakus 2003-12-14 14:34

jest taki jeden wpis w rejestrze który wyłącza mendżera zadań w winNT, znalazłem go chyba na stronie lofix'a (wrzuć lofix w google'a a znajdziesz). Ale to chyba nie o to chodzi żeby go wyłączać...

drutex 2003-11-20 11:26

a jak wylaczyc menagera w xp?

Johny 2003-04-26 15:23

w win xp można cyba tylko całkiem wyłączyś menagera

Maksymus007 2003-04-07 17:03

no ale jak to zrobic w Win Nt/2k/XP?