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

Все особенности программирования под платформу Wintel
Ответить
ivt22
Сообщения: 4
Зарегистрирован: 10 окт 2013, 11:20

07 ноя 2013, 10:19

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

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

var
  H: THandle;  //Дескриптор
begin
 H := GetForegroundWindow;  //Получаем дескриптори на активное окно
 str := GetWndTxt(H);
end;
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

07 ноя 2013, 10:35

Только через FindWindow/FindWindowEx
It's a long way to the top if you wanna rock'n'roll
ivt22
Сообщения: 4
Зарегистрирован: 10 окт 2013, 11:20

07 ноя 2013, 10:37

somewhere писал(а):Только через FindWindow/FindWindowEx

FindWindow по-моему, тут нужно в одном из параметров указывать заголовок программы, но ведь он мне неизвестен, более того мне как раз и нужно прочитать заголовок, всплывшего окна)
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

07 ноя 2013, 10:51

Значит EnumWindows + GetWindowInfo и выполнять поиск по стилям WS_DLGFRAME, WS_EX_TOPMOST
It's a long way to the top if you wanna rock'n'roll
GeorgeSoca
Сообщения: 0
Зарегистрирован: 12 окт 2015, 04:09
Откуда: Guam
Контактная информация:

18 окт 2015, 17:00

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
Ответить