Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2013, 16:03   #1
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию Ожидание завершение приложения

есть некоторая программа (не моя), часто бывает что при закрытии она зависает в процессах, хочу написать программу, которая будет открывать ту программу, ждать ее завершения и убивать процесс (завершение можно определять по наличию окна), подскажите как получить дескрипторы всех запущенных экземпляров одного приложения? FindWindow вроде как возвращает только первый? ждать завершения видимо надо через WaitForSingleObject?
NewLamer&Programer вне форума Ответить с цитированием
Старый 25.06.2013, 16:18   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

в данном случае, таймер + EnumWindows, в которос по PID владельца окна сравнивать с PID нужного процесса.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 25.06.2013, 16:36   #3
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

Пепел Феникса, можете привести пример использования функции EnumWindows? а то я не очень понял... и еще пишу консольную софтину (даже без окна в принципе), т.к. для ожидания завершения ничего не нужно, поэтому таймер наверное не прокатит? (не знаю в консоли разве можно его юзать?)
NewLamer&Programer вне форума Ответить с цитированием
Старый 25.06.2013, 16:46   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Получить hProcess через OpenProcess или CreateProcess затем WaitForSingleObject.

Заезженная тема, гуглите.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Завершение работы приложения Andrew7 C# (си шарп) 4 28.02.2013 12:22
Безусловное завершение работы приложения Aleksandr_59 Общие вопросы Delphi 6 13.04.2012 20:53
Pipe,завершение приложения Скарам Помощь студентам 3 31.03.2010 12:56
Завершение приложения lenivec Общие вопросы Delphi 16 05.01.2008 15:23
Завершение приложения, вместе с ОС John_chek Общие вопросы Delphi 5 08.06.2007 16:00