• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 498
  • Last Modified:

How to know if EXPLORER.EXE is running ?

I want to know if the user has thrown one or more executions of EXPLORER.EXE application.
The EnumProcesses/OpenProcess fonctions from PSAPI.DLL gives me all the running processes inluding EXPLORER.EXE, but I can't differentiate it from the Explorer's windows opened by the user.
Could someone give me some help ?
0
jcjacquot
Asked:
jcjacquot
1 Solution
 
dinomCommented:
I think you should try to enum desktop windows rather than processes.  My hunch is that only one explorer.exe process is going to be running during a users session,  there may however be multiple windows that this process has open, and this seems to be the information you are looking for.  Sound good?
0
 
shchukaCommented:
Try using GetWindow() and GetWindowText() and then checking for the caption of that window.

-Aleks.
0
 
kahhoeCommented:
Hi jcjacquot,

Some information for you.  I have run PView by Visual C++.  It seems there is only one Explorer.EXE running.  When I try to open up one additional Explorer.EXE through task bar or start menu, it just increase by one thread.  I guess in all instance, there are only ONE instance of Explorer.EXE.  The rest are just threads.



Best Regards,
Kah Hoe

0
 
danny_pavCommented:
You can get windows of a single process.  Instead of comparing captions, get the process of explorer.exe and then get the windows associated with that process.
0
 
cmihalacheCommented:
There are two types explorer windows:

* explore (with tree view). You find these windows by calling
FindWindow("ExploreWClass", NULL);

* cabinet (without tree view). You find these windows by calling
FindWindow("CabinetWClass", NULL);

If you wanna find all of them, use EnumWindows and check each window's class.

0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now