是否有可能在 C# 中获取正在运行的进程列表(不是服务进程,而是实际应用程序)并获取应用程序启动时间的日期时间?或者一个 TimeSpan 甚至一个进程运行了多长时间的整数?
问问题
6892 次
2 回答
17
Process.GetProcesses
将检索正在运行的进程列表。
获取关联进程的启动时间。
只需将其减去DateTime.Now
即可获得该过程运行了多长时间。
static void Main(string[] args)
{
var procs = Process.GetProcesses();
foreach (var proc in procs) {
TimeSpan runtime;
try {
runtime = DateTime.Now - proc.StartTime;
}
catch (Win32Exception ex) {
// Ignore processes that give "access denied" error.
if (ex.NativeErrorCode == 5)
continue;
throw;
}
Console.WriteLine("{0} {1}", proc, runtime);
}
Console.ReadLine();
}
于 2013-08-04T03:01:52.933 回答
0
于 2013-08-04T03:04:01.353 回答