程序多开,同名进程窗口如何分别获取 - 已解决
本帖最后由 rally 于 2022-1-7 15:27 编辑如题,如建议H2test测试软件,多开的情况下,如果对每个窗口的测试内容进行轮询获取这个只能激活第一个打开的窗口,
#include <array.au3>
Local $iPid = ProcessExists("h2testw.exe")
ConsoleWrite('$iPid=' & $iPid & @CRLF)
Local $list = WinList()
If Not @error Then
For $i = 1 To $list
If BitAND(WinGetState($list[$i]), 2) And WinGetProcess($list[$i]) = $iPid Then
WinActivate($list[$i])
ExitLoop
EndIf
Next
EndIf
#include <array.au3>
Local $iPid = ProcessList("h2testw.exe")
ConsoleWrite('$iPid=' & $iPid & @CRLF)
Local $list = WinList()
If Not @error Then
For $i = 1 To $list
For$n = 1 To $iPid
If BitAND(WinGetState($list[$i]), 2) And WinGetProcess($list[$i]) = $iPid[$n] Then
WinActivate($list[$i])
ExitLoop
EndIf
Next
Next
EndIf
虽然是同样的进程名,PID 是不同的,需要都列举一下 。。 itzyx 发表于 2022-1-7 11:30
#include
Local $iPid = ProcessList("h2testw.exe")
请问 $iPid 是咋来的? zdphj 发表于 2022-1-7 14:57
请问 $iPid 是咋来的?
ProcessList 返回的进程数
函数返回二维数组,其构成如下:
$aArray = 进程数
$aArray = 第 1 个进程的名称
$aArray = 第 1 个进程的 ID (PID)
$aArray = 第 2 个进程的名称
$aArray = 第 2 个进程的 ID (PID)
...
$aArray = 第 n 个进程的名称
$aArray = 第 n 个进程的 ID (PID)
itzyx 发表于 2022-1-7 11:30
#include
Local $iPid = ProcessList("h2testw.exe")
感谢itzyx的鼎力相助,明白了! 本帖最后由 zdphj 于 2022-1-20 11:59 编辑
不知道怎么删除回复。 本帖最后由 zdphj 于 2022-1-20 11:59 编辑
不知道怎么删除回复。
页:
[1]