Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取有关运行进程的信息_C#_Winapi_Multithreading - Fatal编程技术网

C# 获取有关运行进程的信息

C# 获取有关运行进程的信息,c#,winapi,multithreading,C#,Winapi,Multithreading,我需要在一些机器上启动一个监视器,以找出哪些进程正在锁定它。 因此,我想记录的是您可以在任务管理器上找到的关于每个执行过程的相同信息。 到目前为止,我可以通过C#Process类获得处理器时间信息,但我也想知道它使用了多少内存。查看给定的应用程序或进程是否“没有响应”也非常有用。 关于如何获取所有这些信息的任何想法。(System.Events是否也有帮助?我认为最好的办法是使用WMI并获取类的所有实例。您可以使用获取所有Win32_进程实例。我同意Nick的观点,WMI是您获取详细进程信息的最

我需要在一些机器上启动一个监视器,以找出哪些进程正在锁定它。 因此,我想记录的是您可以在任务管理器上找到的关于每个执行过程的相同信息。
到目前为止,我可以通过C#Process类获得处理器时间信息,但我也想知道它使用了多少内存。查看给定的应用程序或进程是否“没有响应”也非常有用。

关于如何获取所有这些信息的任何想法。(System.Events是否也有帮助?

我认为最好的办法是使用WMI并获取类的所有实例。您可以使用获取所有Win32_进程实例。

我同意Nick的观点,WMI是您获取详细进程信息的最佳选择

但也有一些您可能感兴趣的东西,Powershell(随Windows 7提供,可供其他操作系统下载)不仅支持WMI,而且将WMI工件作为对象呈现,您可以通过管道将linq查询分为其他Powershell调用等,它还完全可编程和/或可编写脚本,这是一项非常酷的技术,非常值得学习……但是……这是一项合理的学习时间投资


感谢Powershell的建议。我以前见过它,它可能真的很强大。WMI实际上是我最好的选择。所以,让我们给你和放弃投票,但尼克得到支票。谢谢