Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Вниз

Как определить HWND окна? 


Vlad_NOJB   (2002-01-20 10:27) [0]

Приветствую всех знатоков Delphi!
Прошу Вас помочь в решении следующей проблемы.
Мне необходимо получить HWND окна. Обычно я это делал ф-цией FindWindow, но в данном случае не работает.
Дело в том, что программа HWND, которой я пытаюсь получить, при каждом запуске меняет класс окна.
Как быть? Может кто-то сталкивался с подобными задачами?
Заранее спасибо!



Алексей Петров   (2002-01-20 11:13) [1]

А ты сам знаешь, для какого окна тебе нужен HWND?
Т.е. сможешь определить набор формальных признаков, по которым можно сказать "это то самое окно".

Если нет - проблема не решается, ну а если да - воспользуйся, например функцией EnumWindows для перебора всех и выбирай нужное.



Vlad_NOJB   (2002-01-20 11:22) [2]

Да, я знаю что это за окно и знаю признаки по которым однозначно можно определить, что это нужное мне окно. Причём эту программу я запускаю из своей программы. Ни откуда нельзя прочитать чтоза класс создала программа?



Алексей Петров   (2002-01-20 11:54) [3]

> Vlad_NOJB (20.01.02 11:22)
> Ни откуда нельзя прочитать чтоза класс создала программа?
А на русский сможешь перевести?

Программа может создать (и почти всегда создает) много классов окон.

Если ты сам процесс запускаешь - то тебе его ProcessId известен - с помощью GetWindowProcessId можешь выбрать все его окошки.



Vlad_NOJB   (2002-01-20 15:18) [4]

Если создаётся какой-то новый класс, то наверно где-то в системе он будет прописан.
А насчёт GetWindowProcessId надо попробовать. О результатах сообщу. Спасибо за помощь!




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.021 c
1-57385           kingdom               2002-03-01 14:01  2002.03.18  
Нужна библиотека для обработки падений приолжения!


6-57481           Leviathan             2001-12-26 20:49  2002.03.18  
mailto:aaa@bbb.cc


1-57406           Сергей Ф              2002-02-20 04:38  2002.03.18  
Как использовать Сишную dllку? Есть исходник. Нужно её вызывать из Дельфи и получать ответ. В Си я не очень. Подскажите пожалуйтса!


14-57518          Natalie               2002-02-05 11:22  2002.03.18  
Термин!


14-57499          Донской               2002-02-02 14:43  2002.03.18  
clMoneyGreen