关闭delphi应用程序以及它打开的另一个应用程序

问题描述:

我有一个应用程序调用其他几个在delphi中编写的.exe组件。我问的问题是,是否可以关闭delphi应用程序以及它打开的所有应用程序(点击'[x]'按钮)?关闭delphi应用程序以及它打开的另一个应用程序

此外,很明显,我已经学会了如何打开和关闭外部应用程序,但在像Windows Media Player这样的情况下,它似乎不工作......任何人都可以给我一些解决方案吗?

在此先感谢

如果你跟踪你打开的应用程序,你可以在OnClose事件的Delphi应用程序的主要形式发布WM_QUIT消息,每个人的窗口句柄。

媒体播放器也一样,但是当你不提供任何关于你如何打开它的信息时很难说。

+0

ah,我明白了,我的歉意......它是使用ShellExecute打开的,但我想关闭在同一时间打开的应用程序(表单,即)关闭使用'红色小十字按钮右上角的按钮...可能吗? – Adam1337 2012-04-02 06:02:04

+0

你可以告诉他们退出(我已经联合了我的回答;最好是'WM_QUIT'而不是'WM_CLOSE')。无论应用程序需要关闭多长时间,它们都可能会在完全相同的时刻关闭。 – 2012-04-03 10:54:53

您可以使用Job Objects,阅读这些功能的文档CreateJobObjectAssignProcessToJobObject

作业对象允许的处理组作为一个单元来管理.... 实例包括执行限制诸如工作集大小和过程 优先或终止与作业相关联的所有进程。