AutoIt。使用 Opt("SendKeyDownDelay", 7000) 同时控制发送到几个 Windows
AutoIt. ControlSend simultaneously to few Windows with Opt("SendKeyDownDelay", 7000)
Local $HWNDs = WinList("Unnamed - Notepad")
Opt("SendKeyDownDelay", 7000)
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "f")
Next
此代码向每个打开的记事本文档发送 7 秒按键。问题是:它是串联的。换句话说,第一个记事本将填充 'f' 7 秒。然后,在它之后,第二个记事本 window 将填充 'f' 键等等。我需要使这个过程并行。有什么想法吗?
得到答案:
Local $HWNDs = WinList("Unnamed - Notepad")
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "{f down}")
Next
Sleep(7000)
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "{f up}")
Next
Local $HWNDs = WinList("Unnamed - Notepad")
Opt("SendKeyDownDelay", 7000)
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "f")
Next
此代码向每个打开的记事本文档发送 7 秒按键。问题是:它是串联的。换句话说,第一个记事本将填充 'f' 7 秒。然后,在它之后,第二个记事本 window 将填充 'f' 键等等。我需要使这个过程并行。有什么想法吗?
得到答案:
Local $HWNDs = WinList("Unnamed - Notepad")
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "{f down}")
Next
Sleep(7000)
For $i = 1 To $HWNDs[0][0]
ControlSend($HWNDs[$i][1], "", "", "{f up}")
Next