Run Effect chart:
Code (Monprocess.vbs):
Copy Code code as follows:
On Error Resume Next
StrComputer = "."
Arrtargetprocs = Array ("Calc.exe", "notepad.exe", "Other.exe")
' The name of the process to be monitored in the array
Set SINK = WScript.CreateObject ("Wbemscripting.swbemsink", "SINK_")
Set objWMIService = GetObject ("winmgmts:" & _
"{impersonationlevel=impersonate}!\\" & strComputer & "\root\cimv2")
Objwmiservice.execnotificationqueryasync SINK, _
"SELECT * FROM __InstanceCreationEvent WITHIN 1" & _
"WHERE targetinstance ISA ' Win32_Process '"
WScript.Echo "Are Monitoring Processes ..."
Todo
Wscript.Sleep 1000
Loop
'***************************************************************************
Sub Sink_onobjectready (objlatestevent, Objasynccontext)
' Trap asynchronous events.
For each strtargetproc in Arrtargetprocs
If LCase (objLatestEvent.TargetInstance.Name) = LCase (Strtargetproc) Then
Intreturn = ObjLatestEvent.TargetInstance.Terminate
If intreturn = 0 Then
WScript.Echo "Time:" & Now & ", succeed!" & Chr (9) & _
"Name:" & ObjLatestEvent.TargetInstance.Name
Else
WScript.Echo "Time:" & Now & ", failed!" & Chr (9) & _
"Name:" & ObjLatestEvent.TargetInstance.Name
End If
End If
Next
End Sub
Original: https://www.enun.net/?p=2385