Program not in task list

Hello people,

is it possible to create a delphi 3 program, wich doesn't appear in the tasklist when ctrl-alt-del is pressed. ?

Who is Participating?
ahalyaConnect With a Mentor Commented:
Hi Mories,
i'm surprised that you have classified this as an "easy" question :-). Anyway, here goes the answer.

you do that by calling the "RegisterServiceProcess" function in Kernel32 DLL.

function declaration goes like this:
(put it just after 'implementation')

function RegisterServiceProcess (ThreadID : THandle; Flags : Integer): Integer; stdcall; external kernel32 name 'RegisterServiceProcess';

in your form create event call the function like this:

ok := RegisterServiceProcess (0, 1);
if ok  = 0 then ShowMessage ('Error Hiding from task list')

No. Every thing running under windows is displayed in the task list, even windows' programs it self, such as the Explorer, and systray etc...

A program not displayed int he task list, would have to not be registered under windows.
btw, What constitutes a "tasklist" ?

if you're referring to the list obtained by pressing [ctrl][alt][del] then you CAN hide an app from that list.

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

moriesAuthor Commented:
yes i do mean that list,

how can i hide it ??
moriesAuthor Commented:
Adjusted points to 100
Hi Mories,

you didn't have to adjust the points :-)
i'm not getting anything out of this !

anyway enjoy delphi !

moriesAuthor Commented:
i think it was worth it.

i needed this one..

since you're being nice, here is some more info:

you can call RegisterServiceProcess with a parameter of 0 the remove it from being a service. for e.g.
you can do

RegisterServiceProcess (0, 1) to hide from the task list and
RegisterServiceProcess (0, 0) to show your program again in the task list.

the first parameter indicates the handle of the process; (0 indicates the calling process)

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.