This worked great for me. Just use as function and kill as many processes as you like.
For more such stuff regarding packaging, visit my blog and follow it for more updates:
KillProc "abc.exe"
Sub KillProc( myProcess )
Dim blnRunning, colProcesses, objProcess
blnRunning = False
Set colProcesses = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery( "Select * From Win32_Process", , 48 )
For Each objProcess in colProcesses
If LCase( myProcess ) = LCase( objProcess.Name ) Then ' Confirm that the process was actually running blnRunning = True ' Get exact case for the actual process name
myProcess = objProcess.Name ' Kill all instances of the process
objProcess.Terminate()
End If
Next
If blnRunning Then
Do Until Not blnRunning
Set colProcesses = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery( "Select * From Win32_Process Where Name = '"& myProcess & "'" )
WScript.Sleep 100 'Wait for 100 MilliSeconds
If colProcesses.Count = 0 Then 'If no more processes are running, exit loop
blnRunning = False
End If
Loop
End If
End Sub
Comments