1

我目前有一些 AutoIT 代码将终止远程机器上的进程,但我需要找到一种方法来添加检查以查看进程是否首先运行。花了一些时间筛选 AutoIT 论坛和谷歌后,我不知所措。这是我目前拥有的:

Func EndProc()
$oWMIService = ObjGet("winmgmts:\\" & $ipAddress & "\root\CIMV2")

If Not IsObj($oWMIService) Then
    MsgBox(48, "ERROR", "Couldn't locate the computer. Please make sure you've selected the correct computer and try again.")
    Return
EndIf

Dim $handle, $colProc, $cProc
$cProc = $oWMIService.ExecQuery('SELECT * FROM Win32_Process WHERE Name = "' & $ProcessToKill & '"')

For $oProc In $cProc
    $oProc.Terminate()
 Next
If $handle Then
    Return $handle
Else
    Return 0
EndIf
EndFunc ; Func EndProc()
4

1 回答 1

1

您可能想查看此处的示例,有许多不同的方法可以通过 AutoIT 使用 WMI 来检索远程运行的进程列表并过滤您关心的进程。

或者,通过 AutoIT 调用PSList也可能很有用。

于 2012-12-19T17:07:28.320 回答