壹、函數:
Function KillPid(ExeName As String) As Boolean
On Error Resume Next
Dim objWMIService, colProcessList, objProcess
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name='" & ExeName & "'")
For Each objProcess In colProcessList
Shell "cmd /c taskkill /pid " & objProcess.Handle, vbHide '重點:取得進程的Pid並將它帶入shell !
KillPid = True
Next
Set objProcess = Nothing
Set colProcessList = Nothing
Set objWMIService = Nothing
End Function
二、調用舉例:
如果妳要終止進程“notepae.exe”,請這樣調用即可:
call KillPid("notepad.exe")