I'm monitoring a snmp-agent enabled Windows 2000 machine by retrieving the hrSWRunTable from the HOST-RESOURCES-MIB. I have to code some C that accepts the list of processes from the hrSWRunTable and outputs their respective applications. I'm wondering if this is possible.

I'm not 100% sure on the difference between an application and a process. I thought an application was a collection of user processes that worked together to perform a function, while a process was a single executable module.

How does Task Manager know the difference between an application and a process? Is it because the application is running in the foreground in an open window?

My list of processes will include information on PID, name, path, parameters, run type and status.

For example, I've seen this as an application many times:

PID: 9520
name: IEXPLORE.EXE
path: C:\Program Files\Internet Explorer\
parameters:
run type: application
status: running

But this isn't under the application tab:

PID: 700
name: SQLAGENT.EXE
path:
parameters:
run type: application
status: running

And when I check the task manager both processes are running under the same user "user1", but only internet explorer shows up under applications.

Am I going to have to apply some sort of filter that links process names to their application?

Thanks.