внутри EnumWindows имеем нечто вроде
Код:
GetWindowThreadProcessId(h, @Pid);
if СlassName = 'NeedClass' then
if Pid = LParam then
if NeedHwnd= 0 then
NeedHwnd:= h;
Хендл может изменится (процесс пере запустится)
В этом случае нужно просто сбросить NeedHWD:=0
вот как это сделать лучше, я не понимаю. Не хочется в цикле всегда проверять корректный хендл
Таких классов несколько, поэтому проверяю еще пид.
upd. Сейчас подумал, что если я нахожу нужный Handle EnumWindows, это это автоматически окно?