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

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

Управление другим приложением


Виталий22 ©   (2003-06-21 12:27:00) 

Привет!
Дано:
1. некое приложение, которое выполняет какие-то вычисления.
2. это приложение время от времени выдает сообщения о завершении какого-либо этапа работы (MessageBox).
Надо: Нажать в этом MessageBox"е на кнопку.
Вопрос:
1.Как найти handle (id) процесса, если известно только его расположение на диске?
2. Как получить самое верхнее окно приложения?
3. Как нажать правильно на кнопку?


VMcL   (2003-06-23 13:08:00) [1]

>Виталий22 (23.06.03 11:40)

1 -> Тогда Win9X: ToolHelp. Win2K+: PSAPI.


Виталий22   (2003-06-23 11:40:00) [2]

GetModuleHandle возвращает хэндл модуля промаппленного в адресном пространстве текущего процесса. (см. MSDN) :-(


VMcL   (2003-06-22 22:18:00) [3]

>Виталий22

1 -> GetModuleHandle, вроде


Виталий22   (2003-06-21 14:52:00) [4]

К сожалению это неприемлемо


Виктор Щербаков   (2003-06-21 13:58:00) [5]


> Как найти handle (id) процесса, если известно только его
> расположение на диске?

Одному исполняемому файлу, в общем случае, может соответствовать несколько работающих процессов. Проще запустить процесс программно, например с помощью CreateProcess. Тогда и Handle будет известен сразу же.


Наверх

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