杀死指定进程名称的小VBS
程序员文章站
2022-03-07 15:27:06
以下是一小段杀死指定进程名字的小vbs,希望对大家有帮助。
function killproc(strprocname)
on error resume nex...
以下是一小段杀死指定进程名字的小vbs,希望对大家有帮助。
function killproc(strprocname) on error resume next set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2") set arrprocesses = objwmiservice.execquery( "select * from win32_process where name ='"&strprocname&"'" ) for each proccess in arrprocesses proccess.terminate 0 next end function
vbs命令-进程操作代码(检测进程, 结束进程)
//检测进程 进程名 = "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
上一篇: php多进程处理tcp连接的代码示例
下一篇: C语言入门理解指针