【发布时间】:2009-12-04 02:29:34
【问题描述】:
我正在寻找一种方法来检测由我的应用程序启动的进程是否又产生了其他进程。希望我可以拥有一个启动和应用程序的线程,观察它直到它退出,然后在该应用程序退出时触发一些其他操作。问题是对于我想要监控的一些应用程序,它们正在启动一个额外的进程然后退出。所以我的触发器在应用程序退出之前触发。
例如,我在进程中启动一个程序。该可执行文件进行一些文件修补,然后启动主程序 - 一个单独的 exe - 然后退出。这会导致 Process.HasExited 返回 true,这会过早触发我的触发器。我真正关心的是主程序何时退出,在这种情况下是初始进程启动的程序,但我似乎无法找到以编程方式执行此操作的方法。
【问题讨论】:
-
作为替代方案,有没有办法查看进程列表中的每个进程并确定它是否以某种方式(直接或间接)源自特定进程 ID?
标签: c# .net windows process c#-2.0