Показать полную графическую версию : [решено] Существует ли функция обратная WinGetProcess
Доброго времени суток! Столкнулся с такой задачей.
Существует процесс "Proga.exe", который связан с окном.
Как, зная процесс, узнать заголовок окна, связанного с этим процессом?
Это что-то наподобие функции обратной WinGetProcess.
В комплекте готовой функции нет. Воспользуйтесь решениями, например, отсюда: ProcessGetWin? - General Help and Support - AutoIt Forums (http://www.autoitscript.com/forum/topic/67267-processgetwin/).
madmasles
08-03-2014, 10:30
Cem,
Можно так сделать.#include (http://autoit-script.ru/autoit3_docs/keywords.htm##include) <Array.au3>
#include (http://autoit-script.ru/autoit3_docs/keywords.htm##include) <WinAPIEx.au3>;http://autoit-script.ru/index.php/topic,47.0.html
Opt (http://autoit-script.ru/autoit3_docs/functions/Opt.htm)('MustDeclareVars', 1)
Global (http://www.autoitscript.com/autoit3/docs/keywords.htm#Global) $aData[1], $aTmp = _WinAPI_EnumProcessWindows(0, 0)
If (http://www.autoitscript.com/autoit3/docs/keywords.htm#If) @error (http://autoit-script.ru/autoit3_docs/macros.htm#@error) Then (http://www.autoitscript.com/autoit3/docs/keywords.htm#Then) Exit (http://www.autoitscript.com/autoit3/docs/keywords.htm#Exit)
ReDim (http://www.autoitscript.com/autoit3/docs/keywords.htm#ReDim) $aData[$aTmp[0][0] + 1][3]
$aData[0][0] = $aTmp[0][0]
For (http://www.autoitscript.com/autoit3/docs/keywords.htm#For) $i = 1 To (http://www.autoitscript.com/autoit3/docs/keywords.htm#To) $aData[0][0]
For (http://www.autoitscript.com/autoit3/docs/keywords.htm#For) $j = 0 To (http://www.autoitscript.com/autoit3/docs/keywords.htm#To) 1
$aData[$i][$j] = $aTmp[$i][$j]
Next (http://www.autoitscript.com/autoit3/docs/keywords.htm#Next)
$aData[$i][2] = WinGetTitle (http://autoit-script.ru/autoit3_docs/functions/WinGetTitle.htm)($aData[$i][0])
Next (http://www.autoitscript.com/autoit3/docs/keywords.htm#Next)
;~ $aData[0][0] - count windows;
;~ $aData[1-n][0] - handle;
;~ $aData[1-n][1] - class;
;~ $aData[1-n][2] - title.
_ArrayDisplay (http://autoit-script.ru/autoit3_docs/libfunctions/_arraydisplay.htm)($aData, '_WinAPI_EnumProcessWindows')
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC