当前位置: 代码网 > it编程>前端脚本>其它脚本 > 杀死指定进程名称的小VBS

杀死指定进程名称的小VBS

2024年05月18日 其它脚本 我要评论
以下是一小段杀死指定进程名字的小vbs,希望对大家有帮助。function killproc(strprocname)on error resume next set objwmiservice =

以下是一小段杀死指定进程名字的小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

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com