在Windows中跟踪已启动的应用程序

在Windows中跟踪已启动的应用程序,windows,Windows,我们正在尝试整合kiosk解决方案,我们可以按小时向用户收取他们使用的应用程序的费用。因此,我们需要一种方法来确定应用程序何时启动、何时关闭,并记录这些信息以进行计费。我是一个经验丰富的.NET程序员,所以托管代码解决方案将是非常好的。我还涉猎了一点Windows API,这样可能也能工作。有什么想法吗?这对于WMI调用来说非常简单。实际上,你可以在应用程序启动、关闭、运行多长时间、使用多少内存等情况下从操作系统捕获事件 下面是一个监视流程创建、删除等的示例 如果您谈论的是您自己编写的应用程序,

我们正在尝试整合kiosk解决方案,我们可以按小时向用户收取他们使用的应用程序的费用。因此,我们需要一种方法来确定应用程序何时启动、何时关闭,并记录这些信息以进行计费。我是一个经验丰富的.NET程序员,所以托管代码解决方案将是非常好的。我还涉猎了一点Windows API,这样可能也能工作。有什么想法吗?

这对于WMI调用来说非常简单。实际上,你可以在应用程序启动、关闭、运行多长时间、使用多少内存等情况下从操作系统捕获事件

下面是一个监视流程创建、删除等的示例


如果您谈论的是您自己编写的应用程序,只需记录DateTime。现在在应用程序的任一侧。Run()方法:

static void Main() 
{   
    DateTime StartTime = DateTime.Now;
    Application.Run(new frmBilling());
    DateTime EndTime = DateTime.Now;

    //Log information to DB for billing
}