2017-03-28 1 views
0

このコードのどのような方法があります:VBS静かで優雅なtaskkillすべてのクロムプロセス

Dim oShell 
Set oShell = WScript.CreateObject ("WScript.Shell") 
oShell.Run "taskkill /im chrome.exe", 0, True 

代わりに、すでにこのスクリプトのように静かにそして優雅にクロムのウィンドウを1つだけん閉じる、私はそれがすべて閉じたいですクロムのインスタンスを実行しています。

このコードでループなしでクロムのすべてのウィンドウを閉じる簡単な方法があれば、それは完璧です。

私はすでに他の方法を試していますが、すべて正常に終了しない(終了する)か、何らかのコマンドプロンプトまたはローディングバーを示しています。

ループなしでこれを行う方法がない場合は、そのようにしてください。

ありがとうございました!

+0

[VBSのすべてのクロムを静かにかつ優雅に閉じる](http://stackoverflow.com/q/43059244/1630171)。 –

答えて

0

これはWMIサービスを使用して実行できます。実行中のすべてのクロムインスタンスを数え、それを静かに1つずつ削除することができます。

これが役に立ちます。それはループを伴います。

Dim oShell, objWMIService, objProcess, colProcess, strComputer, processName,instances 

strComputer = "." 
instances = 0 
processName = "chrome.exe" 

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colProcess = objWMIService.ExecQuery("Select * from Win32_Process") 

For Each objProcess in colProcess 
If objProcess.Name = processName Then instances = instances + 1  'Incrementing Running Instances 
Next 

Set oShell = WScript.CreateObject ("WScript.Shell") 

Do While instances > 0 
oShell.Run "taskkill /im chrome.exe", 0, True  'Killing one instance at a time 
instances = instances - 1 
Loop 
+1

ありがとう!それは私のすべての問題を解決する! – RamQaze

+0

なぜdownvoteを教えてください。だから私は自分自身を改善することができます。 – Abhishek

関連する問題