| procedure TForm1.Button1Click(Sender: TObject); var Wnd: hWnd; buff: array [0..127] of char; Begin ListBox1.Clear; Wnd := GetWindow(Handle, gw_HWndFirst); While Wnd <> 0 do Begin // Не показываем: If (Wnd <> Application.Handle) // Собственное окно and IsWindowVisible(Wnd) // Невидимые окна and (GetWindow(Wnd, gw_Owner) = 0) // Дочерние окна and (GetWindowText(Wnd, buff, sizeof(buff)) <> 0) Then Begin GetWindowText(Wnd, buff, sizeof(buff)); ListBox1.Items.Add(StrPas(buff)); End; Wnd := GetWindow(Wnd, gw_hWndNext); End; ListBox1.ItemIndex := 0; End; |