如果主应用程序关闭,则终止我正在监视的进程

本文关键字:监视 进程 终止 应用程序 如果 | 更新日期: 2023-09-27 17:56:10

我有一个应用程序启动另一个程序并监视它。当程序关闭时,我的应用程序也会关闭。

但是,如果我先关闭我的应用程序,另一个程序仍在运行。

ProcessStartInfo procInfo = new ProcessStartInfo("myProg.exe");
Process proc = new Process();
proc.StartInfo = procInfo;
proc.Start();
while (!proc.HasExited)
{
    // do stuff
}
// On proc exit, my application is also done

如何确保如果我关闭监视应用程序,正在监视的任何进程也会被终止?

例如,假设MyApp正在监视记事本。如果我关闭MyApp,记事本也应该关闭。

如果主应用程序关闭,则终止我正在监视的进程

由于这是一个控制台应用程序,因此捕获"Exit"事件比窗体更棘手。看看这个线程,我把它加了书签,因为我很久以前就想知道和你一样的事情,把它放在身边很方便。

在程序调用的那一端:

if (!proc.HasExited)
    proc.CloseMainWindow();

。以关闭其他进程的窗口。