2011-11-28 60 views
0

问出生的好奇心这里的过程:反应到开始终止

我怎么会去被通知或轮询,看的时候正在终止的进程?

因此,我的应用程序可以侦听进程中的“终止开始”事件,例如,以跟踪特定进程需要平均关闭多长时间?

请注意,这不是与我的过程翻转杀死开关,这将是简单的是,但我的应用程序将只作为观察员。

任何帮助,将不胜感激:)

回答

0

我真的不知道如果有一个这是一个“推”的操作(你以某种方式得到通知的结束进程)的方法。

但我会模仿这种观察做的是创建一个Windows服务,在指定的时间间隔内轮询进程(比如说,每隔2秒或无论多长时间都可以接受)。这样,当另一个过程结束并采取相应行动时,您可以处理这种情况。

+0

再次,不需要轮询 –

0

我不知道是否有WIN32 API用于订阅终止的进程的事件,但你可以简单地通过获取进程列表中运行做投票:

var processes = System.Diagnostics.Process.GetProcesses(); 

我会用ProcessId作为我的字典检查它何时启动以及何时终止的关键。

+0

不需要轮询。改用WMI。 –