Цитата Атос:
А вдруг, мне хэндл позже понадобится. »
|
Ну так получитие его по PID и храните в переменной.
Код:
$iPID = Run('notepad.exe')
$hWindow = _WinWaitByPID($iPID, 3)
ConsoleWrite($hWindow & @CRLF)
ConsoleWrite(WinGetTitle($hWindow) & @CRLF)
Func _WinWaitByPID($iPID, $iTimeout = 0, $bOnlyVisible = True)
Local $iTimer = TimerInit()
Local $aWinList
While 1
$aWinList = WinList()
For $i = 1 To UBound($aWinList) - 1
If $aWinList[$i][0] <> '' And WinGetProcess($aWinList[$i][1]) = $iPID Then
If Not $bOnlyVisible Or ($bOnlyVisible And BitAND(WinGetState($aWinList[$i][1]), 2) = 2) Then
Return $aWinList[$i][1]
EndIf
EndIf
Next
If $iTimeout And (TimerDiff($iTimer) >= ($iTimeout * 1000)) Then
Return -1
EndIf
Sleep(10)
WEnd
Return 0
EndFunc