Get Process List from window Service

K

kalpesh

I am developing virtual printer driver In window vista operation
system which run under spooler service.

Now i want Process List of currnt login user from my this printer
driver
Or
we can say that i want Process list of current login user from window
service
i got the current user session id from WTSGetActiveConsoleSessionId()
API
now how can i get the process list of this active session my Window
serivice i got idea
that using WTSQuerySessionInformation get the application name running
user session
but i dont know how to use this function help me.

Any comments are welcome..
Kalpesh.
 
A

Andrew McLaren

kalpesh said:
Now i want Process List of currnt login user from my this printer
driver
Or
we can say that i want Process list of current login user from window
service

Sounds like a job for WTSEnumerateProcesses() ?

A quick trawl on Google, shows this sample:
http://www.codeproject.com/w2k/Livi...&forumid=24245&exp=0&select=908648#xx908648xx

But you are always going to find it awkward to send WM messages from a
driver or service, to a user session. Basically Microsoft does not want you
to do this; so they don't provide any APIs to make it easy. The robust way
for a service to communicate with a user, is to have a user mode process
which starts when the user logs in (it could be a hidden app, no visible
Windows). This app displays the messages to the user, eg via MessageBox().
The driver and/or service communicate with this user-mode app, using some
proper form of inter-process communication, such as Named Pipes or RPC -
instead of trying to poke a WM message across session and user boundaries.
Sending Window Messages like that worked back in simple Win 3.x days, when
no-one cared about security, and there was only a single user per machine.
But it just doesn't fit in with today's world. You've already seen thsi
page, right?

http://blogs.technet.com/askperf/ar...cation-compatibility-session-0-isolation.aspx

Hope it helps a bit,
Andrew
 
A

Andrew McLaren

By the way, while I think your question *is* appropriate for this newsgroup,
you'll probably get better answers at a forum like Code Guru:
http://www.codeguru.com/forum/

.... or The Code Project:
http://www.codeproject.com/script/comments/forums.asp?forumid=1647

.... or the "microsoft.public.win32.programmer.ui" newsgroup.

I don't think many of the folks reading
microsoft.public.windows.vista.general are Win32 C++ programmers! Most of
them are just users. You'll get better answers for these questions from
places where programmers hang out.

Good luck!
Andrew
 
K

kalpesh

By the way, while I think your question *is* appropriate for this newsgroup,
you'll probably get better answers at a forum like Code Guru:
http://www.codeguru.com/forum/

... or The Code Project:
http://www.codeproject.com/script/comments/forums.asp?forumid=1647

... or the "microsoft.public.win32.programmer.ui" newsgroup.

I don't think many of the folks reading
microsoft.public.windows.vista.general are Win32 C++ programmers! Most of
them are just users. You'll get better answers for these questions from
places where programmers hang out.

Good luck!
Andrew

Thanks a lot
kalpesh.
 
K

kalpesh

Thanks a lot
kalpesh.- Hide quoted text -

- Show quoted text -

Thanks for reply
i have more question that my Printer driver DLL is one serice which
run in session 0 and user run in session 1 , session 2 and so on..
In
window vista operation system.

now i want process list of user session means i want a process list
of
session 1 from session 0, is it possible in VISTA if yes then HOW
please help me...


Thanks,
Kalpesh
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top