Click to See Complete Forum and Search --> : Determine Shell Process ID


codeguru_zoicas
October 22nd, 2004, 06:40 AM
Is there any posibility to determine which process is my shell ?

Thx
Cristi

Marc G
October 22nd, 2004, 07:02 AM
Find the desktop -> GetDesktopWindow
then use GetWindowThreadProcessId to get the process and thread ID.

codeguru_zoicas
October 22nd, 2004, 08:16 AM
The problem is that I get the process ID of csrss.exe, but I need the Windows Explorer process id.

Marc G
October 22nd, 2004, 08:27 AM
Perhaps GetShellWindow (only Windows 2000 or later).

What are you trying to do? Why do you need that ID?

codeguru_zoicas
October 22nd, 2004, 09:27 AM
Ok... it works. THX

I need to destroy all the processes started by a certain user (exclude the shell ).

Marc G
October 22nd, 2004, 09:32 AM
I need to destroy all the processes started by a certain user (exclude the shell ).
Why do you need to do that?

MrViggy
October 22nd, 2004, 12:39 PM
Are you sure Windows Explorer is running for that user? ;)

The only reason I ask is that I'm running Windows XP, and NO Explorer at all. I've gone and changed my shell from Explorer to something else. In other words, this app may work for most users, but not all...

Viggy

codeguru_zoicas
October 24th, 2004, 06:50 AM
Why do I need to do that ? Here is the answer :

I have a computer advertising something on the desktop (active desktop). I also
want to let users to browse the web. After a certian period of idle time I want to
close all the windows (an the processes) open by the user who used the
computer to make the advertisement visible.

Cristi

Marc G
October 24th, 2004, 08:06 AM
mmm, then don't close all programs, just use the "Show Desktop" functionality, which minimizes all windows.