//检测进程
 进程名 = "qq.exe" 返回值 = IsProcess(进程名)
 If 返回值 = True Then
     MessageBox "发现进程"
 ElseIf 返回值 = False Then
     MessageBox "没有发现进程"
 End If
 
 //检测进程 优化后的代码
 If IsProcess("qq.exe") = True Then      MessageBox "发现进程"
 Else 
     MessageBox "没有发现进程"
 End If
 
 //检测进程组
 进程组 = "qq.exe|notepad.exe" 返回值 = IsProcessEx(进程组)
 If 返回值 = True Then
     MessageBox "发现进程"
 ElseIf 返回值 = False Then
     MessageBox "没有发现进程"
 End If
 
 //检测进程组 优化后的代码
 If IsProcessEx("qq.exe|notepad.exe") = True Then      MessageBox "发现进程"
 Else 
     MessageBox "没有发现进程"
 End If
 
 //结束进程 前台执行
 进程名 = "qq.exe"     Call CloseProcess(进程名, 1)
 
 
 //结束进程 后台执行
 进程名 = "qq.exe"     Call CloseProcess(进程名, 0)
 
 
     //结束进程组 前台执行
 进程组 = "qq.exe|notepad.exe"     Call CloseProcessEx(进程组, 1)
 
 
 //结束进程组 后台执行
 进程组 = "qq.exe|notepad.exe"     Call CloseProcessEx(进程组, 0)
 
 
 //实例应用 结束进程 前台执行 10秒超时
 进程名 = "qq.exe" For 10
     Call CloseProcess(进程名,1)
     Delay 1000
     返回值 = IsProcess(进程名)
     If 返回值 = False Then
         Exit For
     End If
 Next
 If 返回值=True Then
     MessageBox "结束进程失败"
 Else
     MessageBox "结束进程成功"
 End If
 
 //实例应用 结束进程 前台执行 优化后的代码(直到型循环) 有些进程VBS检测不到 所以先关闭后检测
 Do
     Call CloseProcess("qq.exe",1)     Delay 1000
 Loop While IsProcess("qq.exe")=True MessageBox "结束进程成功"
 
 //实例应用 结束进程组 后台执行 10秒超时
 进程组 = "qq.exe|notepad.exe" For 10
     Call CloseProcessEx(进程组,0)
     Delay 1000
     返回值 = IsProcessEx(进程组)
     If 返回值 = False Then
         Exit For
     End If
 Next
 If 返回值=True Then
     MessageBox "结束进程失败"
 Else
     MessageBox "结束进程成功"
 End If
 
 //实例应用 结束进程组 后台执行 优化后的代码(直到型循环) 有些进程VBS检测不到 所以先关闭后检测
 Do
     Call CloseProcessEx( "qq.exe|notepad.exe",0)     Delay 1000
 Loop While IsProcessEx( "qq.exe|notepad.exe")=True MessageBox "结束进程成功"
 
 
 
 
 //函数 子程序部分代码
 
 //检测进程
 Function IsProcess(ExeName)
     Dim WMI, Obj, Objs,i
     IsProcess = False
     Set WMI = GetObject("WinMgmts:")
     Set Objs = WMI.InstancesOf("Win32_Process")
     For Each Obj In Objs
         If InStr(UCase(ExeName),UCase(Obj.Description)) <> 0 Then
             IsProcess = True
             Exit For
         End If
     Next
     Set Objs = Nothing
     Set WMI = Nothing
 End Function
 
 //结束进程
 Sub CloseProcess(ExeName,RunMode)
     dim ws
     Set ws = createobject("Wscript.Shell")
     ws.run "cmd.exe /C Taskkill /f /im " & ExeName,RunMode
     Set ws = Nothing
 End Sub
 
 //检测进程组
 Function IsProcessEx(ExeName)
     Dim WMI, Obj, Objs,ProcessName,i
     IsProcessEx = False
     Set WMI = GetObject("WinMgmts:")
     Set Objs = WMI.InstancesOf("Win32_Process")
     ProcessName=Split(ExeName,"|")
     For Each Obj In Objs
         For i=0 to UBound(ProcessName)
             If InStr(UCase(ProcessName(i)),UCase(Obj.Description)) <> 0 Then
                 IsProcessEx = True
                 Exit For
             End If
         Next
     Next
     Set Objs = Nothing
     Set WMI = Nothing
 End Function
 
 //结束进程组
 Sub CloseProcessEx(ExeName,RunMode)
     dim ws,ProcessName,CmdCode,i
     ProcessName = Split(ExeName, "|")
     For i=0 to UBound(ProcessName)
         CmdCode=CmdCode & " /im " & ProcessName(i)
     Next
     Set ws = createobject("Wscript.Shell")
     ws.run "cmd.exe /C Taskkill /f" & CmdCode,RunMode
     Set ws = Nothing
 End Sub