Nie wiem czy się dobrze rozumiemy. To:
Kopiuj
h := GetHWndByPID(GetProcesID('Firefox.exe'));
Zwraca uchwyt okna głównego
Kopiuj
EnumChildWindows(h, @EnumChildren, UINT_PTR(Memo1.Lines));
odpala funkcję
Kopiuj
function EnumChildren(hwnd: HWND; lParam: LPARAM): BOOL; stdcall;
jest to wywołanie z Windows API i powoduje, że dla danego HWND wyszukiwane są wszystkie childy czyli labele edity itd w procesie firefox.exe
Ta konstrukcja:
Kopiuj
GetClassName(hwnd, ClassName, Length(ClassName));
Windows.GetWindowText(hwnd,classname,length(ClassName));
if pos('<html',lowercase(ClassName)) > 0 then
//twoj kod
powoduje, że sprawdzane są wszystkie childy procesu firefox.exe i jeśli który będzie posiadał <html to masz sukces i możesz dalej sobie z tym coś robić ;)