跟踪Windows中启动的应用程序

我们正在尝试将自助服务terminal解决scheme放在一起,我们可以按小时收费,以便他们使用应用程序。 因此,我们需要一种方法来确定何时启动应用程序,什么时候应用程序closures并logging此信息以进行计费。 我是一个经验丰富的.NET程序员,所以托pipe代码解决scheme会很好。 我也尝试了一下Windows API,这样也可以工作。 有任何想法吗?

WMI调用很简单。 实际上,您可以在应用程序启动时,关闭时,运行多长时间,使用多少内存等时从操作系统捕获事件。

监控过程创建,删除等的一个例子

http://weblogs.asp.net/whaggard/archive/2006/02/11/438006.aspx

如果您正在讨论自己编写的应用程序,只需在Application.Run()方法的任一侧上记录DateTime.Now即可:

static void Main() { DateTime StartTime = DateTime.Now; Application.Run(new frmBilling()); DateTime EndTime = DateTime.Now; //Log information to DB for billing }