Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Найти application в сторонней программе [D7, WinXP]


Страницы:   1 2

BFG9k ©   (2007-06-04 16:37:00) 

Как мне найти Handle окна в программе, которое соответствует окну application в Delphi, не зная его названия и имени класса? То есть то окно, которое отображается в панели задач.


Mario_uq   (2007-06-12 05:05:00) [1]

Удалено модератором


Coco Chanel   (2007-06-12 05:05:00) [2]

Удалено модератором


Сергей М.   (2007-06-05 11:35:00) [3]


> является родительским
> для всех окон верхнего уровня приложения


У окон верхнего уровня нет родительского окна.


Сергей М.   (2007-06-05 11:34:00) [4]


> Такое определение главного окна подойдет ?


В общем случае - нет, не подойдет.


Германн   (2007-06-05 02:09:00) [5]


> BFG9k ©   (04.06.07 19:21) [18]
>
> Style [13] : Первый дельный совет, спасибо.
>
> Раз уж это уже в начинающих, то нафига это надо обьяснять
> нет смысла ....
>

Ну если столько людей ответивших на твой вопрос так и не смогли понять суть оного, так ес-сно его переместили в "Начинающие". А твоя "детская" обида ещё более подтверждает, что модератор был прав.
P.S. Перемещение в "Начинающие" нисколько не обидно. Никто не знает всего! Зато там не принято издеваться над авторами "непонятных" вопросов. Там либо помогаешь, либо молчишь.


DVM   (2007-06-04 22:31:00) [6]


> BFG9k ©


Ты бы все-таки объяснил, зачем такое тебе нужно. Так ответят гораздо быстрее и по делу. А то получается, хочу найти, но не знаю что.

А если программа написана без использования VCL и нет там никакого TApplication, что тогда? Или одновременно запущено несколько програм в которых есть TApplication? Как отличать то их будешь?

Так, что давай подробнее...


BFG9k   (2007-06-04 19:21:00) [7]

Style [13] : Первый дельный совет, спасибо.

Раз уж это уже в начинающих, то нафига это надо обьяснять нет смысла ....


Eraser   (2007-06-04 18:52:00) [8]

> [0] BFG9k ©   (04.06.07 16:37)
> Как мне найти Handle окна в программе, которое соответствует
> окну application в Delphi

в программе на D2007 с опр. настройками это будет сделать проблемотично.


Anatoly Podgoretsky   (2007-06-04 18:42:00) [9]


> BFG9k ©   (04.06.07 18:11) [9]

Ты уж определись что тебе нужно?


Style   (2007-06-04 18:39:00) [10]


> clickmaker ©   (04.06.07 18:36) [14]


Я думаю будет repeat....until; пока он не ответит на вопрос
"НАФИГА это надо?"


clickmaker   (2007-06-04 18:36:00) [11]


>  [12] BFG9k ©   (04.06.07 18:19)

похоже мы зацикливаемся...
возвращаемся к [4]


Style   (2007-06-04 18:23:00) [12]


> Верно, и какое-то из окон приложения создается первым, является
> родительским для всех окон верхнего уровня приложения и
> т д. КАК ЕГО НАЙТИ ?!


В VCL приложении - первым создается окно класса TApplication. Это не MainForm.
Скорее всего для указателя этого окна GetParent() будет возвращать указатель на окно, которое было создано другим процессом.
Процесс можно узнать - GetWindowThreadProcessId функцией. По ProcessID можно и имя модуля узнать.
Вот я только одного не пойму - НАФИГА это надо?


BFG9k   (2007-06-04 18:19:00) [13]

clickmaker :

не известно ни имени окна, ни имени его класса .....


clickmaker   (2007-06-04 18:16:00) [14]


> [9] BFG9k ©   (04.06.07 18:11)

FindWindow()


BFG9k   (2007-06-04 18:14:00) [15]

Сергей М.:


> ...какое-то из окон приложения создается первым, является родительским
> для всех окон верхнего уровня приложения


Такое определение главного окна подойдет ?


BFG9k   (2007-06-04 18:11:00) [16]

Loginov Dmitry:
> У application класс окна фиксированный.


Только что выяснил, что это не так. Я имею в виду главное окно, а не именно application. Как угодно этот класс может называться.                                                                                                                                                                                                                                                                                                                    clickmaker :
Верно, и какое-то из окон приложения создается первым, является родительским для всех окон верхнего уровня приложения и т д. КАК ЕГО НАЙТИ ?!


Сергей М.   (2007-06-04 18:04:00) [17]


> BFG9k ©   (04.06.07 17:42) [5]
> Главное окно


В общемслучае:

1. "Главным" окном может быть любое окно.
2. "Главное" окно не обязано быть видимым.
3. Невидимые окна не фигурируют в Панели Задач.
4. Видимые окна, фигурирующие в панели задач, не обязаны быть "главными".


Style   (2007-06-04 17:54:00) [18]


> Как мне найти Handle окна в программе, которое соответствует
> окну application в Delphi



> Какой ? TApplication ? Даже у программ, не написанных на
> дельфи ?


BFG9k ©   (04.06.07 17:42) [5]

Ты уж определись что тебе нужно?


clickmaker   (2007-06-04 17:44:00) [19]


> Главное окно, создающееся с помощью WinMain

с помощью WinMain не создаются окна. Они создаются с помощью CreateWindow


BFG9k   (2007-06-04 17:42:00) [20]

DVM: Главное окно, создающееся с помощью WinMain. Я понял, ты - нет, бывает ....

Loginov Dmitry:
> У application класс окна фиксированный.


Какой ? TApplication ? Даже у программ, не написанных на дельфи ? Я не говорю об именно application, в этом случае все было бы просто ....


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо