Закрытие приложения Delphi вместе с другим открытым приложением - PullRequest
2 голосов
/ 02 апреля 2012

У меня есть приложение, которое вызывало несколько других .exe-компонентов, написанных на delphi. Вопрос, который я задаю, заключается в том, можно ли закрыть приложение delphi вместе со всем открытым приложением (при нажатии кнопки «[x]»)?

Кроме того, очевидно, что я научился открывать и закрывать внешнее приложение, но в некоторых случаях, например, в Windows Media Player, оно просто не работает ... может кто-нибудь дать мне какое-то решение для этого?

Заранее спасибо

Ответы [ 2 ]

4 голосов
/ 03 апреля 2012

Вы можете использовать Job Objects, прочитайте документацию по этим функциям CreateJobObject и AssignProcessToJobObject.

Объект задания позволяет управлять группами процессов как единым целым .... Примеры включают применение ограничений, таких как размер рабочего набора и процесс приоритет или завершение всех процессов, связанных с заданием .

1 голос
/ 02 апреля 2012

Если вы отслеживаете открытые приложения, вы можете отправить сообщение WM_QUIT в каждый дескриптор окна в событии OnClose главной формы приложения Delphi.

То же самое должно работать дляMedia Player, но трудно сказать, когда вы не предоставляете никакой информации о том, как вы его открыли.

...