Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2012, 00:01   #1
pavellyba
Пользователь
 
Регистрация: 01.12.2010
Сообщений: 84
По умолчанию Как использовать функцию GetWindow в Delphi Xe2?

Как использовать функцию GetWindow в Delphi Xe2?
Использую проект Firemonkey, вот код:
Код:
procedure TForm7.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;
При нажатие Button1 почему то действия не происходит(
pavellyba вне форума Ответить с цитированием
Старый 10.04.2012, 00:13   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

1)лучше примените EnumWindows.
2)
Код:
function phGetWindowText(h:THandle):string;
begin
 SetLength(Result,GetWindowTextLength(h));
 SetLength(Result,GetWindowText(h,@Result[1],Length(Result)+1));
end;
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Embarcadero Delphi XE2 Partner DVD (Зборник компонентов для XE2) volod3000 Софт 2 01.11.2011 02:26
Как использовать отдельную программу как функцию Hemul Общие вопросы C/C++ 1 02.05.2011 19:11
Как использовать функцию Case maloun Общие вопросы Delphi 11 08.02.2011 19:19
Как в формуле графика использовать функцию? cerberochek Microsoft Office Excel 2 08.09.2010 13:25
Как правильно использовать функцию ExtFloodFill. SkAndrew Общие вопросы Delphi 0 14.04.2010 14:05