我是Windows Universal Apps的新手,但我发现它非常有趣,所以我想开始了解它的功能。
我目前是WPF .NET开发人员,我希望能够检查程序当前是否正在运行并获取其实例。在WPF中,我会在Process.GetProcessesByName()的帮助下执行此操作,但在通用应用程序中不提供Process。在Windows 8.1 Universal App中是否有类似的方法来获取进程(运行程序的实例)?
答案 0 :(得分:3)
System.Diagnostics.Process在UWP应用程序中不可用。这些应用程序是沙盒的,不允许查看计算机上运行的其他进程。
答案 1 :(得分:1)
将此行添加到您的使用列表中:
using System.Diagnostics;
现在,您可以使用Process.GetProcesses()方法获取进程列表,如下例所示:
Process[] processlist = Process.GetProcesses();
foreach(Process theprocess in processlist){
Console.WriteLine(“Process: {0} ID: {1}”, theprocess.ProcessName, theprocess.Id);
}
也可能需要Process对象的一些有趣属性:
p.StartTime (Shows the time the process started)
p.TotalProcessorTime (Shows the amount of CPU time the process has taken)
p.Threads ( gives access to the collection of threads in the process)