ucthakur-NOSPAM
Fri Mar 17 08:09:29 CST 2006
Add following lines:
on error resume next
If objLatestProcess.TargetInstance.GetOwner ( User, Domain ) = 0 Then
strOwner=" Owner: " & User
Else
strOwner=" Unable to get owner."
End If
on error goto 0
within your Do While loop, after the line:
Set objLatestProcess = colMonitoredProcesses.NextEvent
I added error handling code "on error..." because your script will fail
(throw an error and stop execution) if it tries to get owner of a process
where you don't have permissions or you're unable to get owner of a process
by any other reason.
for more information on GetOwner method (and an example script too!), please
visit following MS web site link
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/getowner_method_in_class_win32_process.asp
-----
Umesh
"Old programmers never die. They just terminate and stay resident."
"zerbie45@gmail.com" wrote:
> Hi all,
>
> The script I use (see below) only retrieves the process name. I would
> like to know the user running the process. Would this be possible ?
>
> Thank you for your help.
>
> strComputer = "."
> Set objWMIService = GetObject("winmgmts:" _
> & "{impersonationLevel=impersonate}!\\" & strComputer &
> "\root\cimv2")
> Set colMonitoredProcesses = objWMIService. _
> ExecNotificationQuery("select * from __instancecreationevent " _
> & " within 1 where TargetInstance isa 'Win32_Process'")
> i = 0
>
> Do While i = 0
> Set objLatestProcess = colMonitoredProcesses.NextEvent
> Wscript.Echo objLatestProcess.TargetInstance.Name
> Loop
>
>