vbs taskkill 按名称
Posted
技术标签:
【中文标题】vbs taskkill 按名称【英文标题】:vbs taskkill by name 【发布时间】:2016-12-04 07:21:24 【问题描述】:我正在尝试找到如何使用它的标题关闭进程。
我找到了命令:
taskkill /fi "WINDOWTITLE eq the_title_of_the_windows"
而且效果很好。
当我尝试时:
oShell.Run "taskkill /fi "WINDOWTITLE eq the_title_of_the_windows"", , True
我得到一个错误,它不会编译。
关于如何在这一行中使用“符号”有什么想法吗?
【问题讨论】:
【参考方案1】:为了在另一对双引号中使用双引号,你需要使用""
而不是"
,因为如果你使用一个引号"
,它将被认为是文本的结尾在第一个和第二个引号之间
所以,你的代码应该是这样的:
oShell.Run "taskkill /fi ""WINDOWTITLE eq the_title_of_the_windows""", , True
以下示例将终止所有带有窗口标题的进程(计算器):
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.Run "taskkill /fi ""WINDOWTITLE eq Calculator""", , True
希望有帮助:)
【讨论】:
你试过计算器的例子吗?你得到什么错误? 抱歉我的错误,我没有完全理解它:) 再次感谢【参考方案2】:如果您使用Run
执行命令行,您会发现屏幕上弹出丑陋的dos 窗口,以避免使用以下两种方式之一:
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.Exec "taskkill /fi ""WINDOWTITLE eq Calculator"""
或
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.Run "taskkill /fi ""WINDOWTITLE eq Calculator""",0,False
【讨论】:
【参考方案3】:或者,您可以尝试以下代码: 此代码将从任务管理器中选择任务并关闭进程。 复制粘贴“.vbs”文件中的代码并使用 call KillAll("your task name.exe")
Function KillAll(ProcessName)
Dim objWMIService, colProcess
Dim strComputer, strList, p
Dim i :i= 0
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "impersonationLevel=impersonate!\\" & strComputer & "\root\cimv2")
Set colProcess = objWMIService.ExecQuery ("Select * from Win32_Process Where Name like '" & ProcessName & "'")
For Each p in colProcess
p.Terminate
i = i+1
Next
MsgBox("Total Instance :: " &i& " of "&ProcessName&" is killed")
End Function
call KillAll("MicrosoftEdge.exe")
【讨论】:
以上是关于vbs taskkill 按名称的主要内容,如果未能解决你的问题,请参考以下文章