2012-04-02 118 views
2

我有一個應用程序調用其他幾個在delphi中編寫的.exe組件。我問的問題是,是否可以關閉delphi應用程序以及它打開的所有應用程序(點擊'[x]'按鈕)?關閉delphi應用程序以及它打開的另一個應用程序

此外,很明顯,我已經學會了如何打開和關閉外部應用程序,但在像Windows Media Player這樣的情況下,它似乎不工作......任何人都可以給我一些解決方案嗎?

在此先感謝

回答

1

如果你跟蹤你打開的應用程序,你可以在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

4

您可以使用Job Objects,閱讀這些功能的文檔CreateJobObjectAssignProcessToJobObject

作業對象允許的處理組作爲一個單元來管理.... 實例包括執行限制諸如工作集大小和過程 優先或終止與作業相關聯的所有進程。

相關問題