Страница 1 из 1

Как получить handle активного окна

Добавлено: 07 ноя 2013, 10:19
ivt22
добрый день, подскажите как получить handle активного окна. Мне подсказали вот такой код, но тут я получаю хендл, только в тот момент, когда кликну мышью внутри этого окна, а есть такие программы, которые когда требуют действий, вылезают поверх всех окон, но оно не считается активным, пока внутри этого окна не кликнешь мышью, а мне как раз необходимо получить Хендл таких окошечек

Код: Выделить всё

var
  H: THandle;  //Дескриптор
begin
 H := GetForegroundWindow;  //Получаем дескриптори на активное окно
 str := GetWndTxt(H);
end;

Re: Как получить handle активного окна

Добавлено: 07 ноя 2013, 10:35
somewhere
Только через FindWindow/FindWindowEx

Re: Как получить handle активного окна

Добавлено: 07 ноя 2013, 10:37
ivt22
somewhere писал(а):Только через FindWindow/FindWindowEx

FindWindow по-моему, тут нужно в одном из параметров указывать заголовок программы, но ведь он мне неизвестен, более того мне как раз и нужно прочитать заголовок, всплывшего окна)

Re: Как получить handle активного окна

Добавлено: 07 ноя 2013, 10:51
somewhere
Значит EnumWindows + GetWindowInfo и выполнять поиск по стилям WS_DLGFRAME, WS_EX_TOPMOST

What hosting to choose?

Добавлено: 18 окт 2015, 17:00
GeorgeSoca
Pa vart webbhotell kan ni kanna er trygg! Forutom att vi anvander oss av speglade harddiskar pa alla vara servrar sa tar vi aven backup tva ganger per dygn pa separata servrar. Vi anvander oss av ISPmanager som kontrollpanel. ISPmanager ar en kontrollpanel som gor det enkelt att administrera sin hemsida. Hos oss kan ni lagga hur manga hemsidor och domaner ni onskar under ett webbhotellskonto.
virtual hosting