AutoIT检查进程是否在远程PC上运行

时间:2012-12-19 16:32:24

标签: process autoit wmi-query

我目前有一些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()

1 个答案:

答案 0 :(得分:1)

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

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