如何关闭所有浏览器?

时间:2014-03-03 09:14:38

标签: vbscript

我尝试创建关闭/杀死所有浏览器的代码。 怎么做?

我创建了这样的代码:

Set obj = CreateObject("InternetExplorer.Application")
obj.Quit

Set obj = CreateObject("Chorme.Application")
obj.Quit

Set obj = CreateObject("Firefox.Application")
obj.Quit

但它不起作用。

是否有想写脚本立即关闭所有浏览器?就像我们在CCleaner中看到的一样。

2 个答案:

答案 0 :(得分:2)

你可以做到这一点而不用炮轰:

Set wmi = GetObject("winmgmts://./root/cimv2")

browser = "iexplore.exe"
qry = "SELECT * FROM Win32_Process WHERE Name='" & browser & "'"

For Each p In wmi.ExecQuery(qry)
  p.Terminate
Next

答案 1 :(得分:1)

CreateObject只能用于操作COM或ActiveX对象,但不幸的是Chrome或Firefox不是ActiveX。要按预期工作,您可以使用tasklist和taskkill激活。

任务列表可以使用pid列出进程名称,taskkill可以使用指定的id终止进程。

tasklist /fi "imagename eq iexplore.exe"

Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
iexplore.exe                  2448 Console                    1     63,124 K
iexplore.exe                  2752 Console                    1    304,312 K
iexplore.exe                  4660 Console                    1    230,492 K
iexplore.exe                  1908 Console                    1    211,332 K
iexplore.exe                  4536 Console                    1    148,400 K
iexplore.exe                  3760 Console                    1    136,800 K
iexplore.exe                  3652 Console                    1    206,788 K
iexplore.exe                  2248 Console                    1    198,296 K


taskkill /fi "imagename eq iexplore.exe" 

vbs中的代码

Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")

Set oExec = WshShell.Exec("taskkill /fi ""imagename eq iexplore.exe""")

Do While oExec.Status = 0
     WScript.Sleep 100
Loop