获取计算机上的所有进程

Posted feiyucha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取计算机上的所有进程相关的知识,希望对你有一定的参考价值。

实现效果:

  技术分享图片

知识运用:

  Process类的GetProcesses方法

  public static Process[] GetProcesses()  //为本地计算机上的每个进程资源创建一个新的Process组件

  public static Process[] GetProcesses(string machineName)  //为指定计算机

  Process类的一些属性

  public string ProcessName { get; }         //获取进程名称

  public int Id { get; }                //获取进程ID

  public ProcessThreadConllection Threads { get; }  //获取在关联进程中运行的一组线程

  public int BasePriority { get ;}           //获取管理进程的基本优先级

  public int WorkingSet { get;}           //获取关联进程的物理内春总量 (单位字节)

  public int VirtualMemorySize {get;}         //获取虚拟内存大小

实现代码:

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                listView1.Items.Clear();
                Process[] myProcess = Process.GetProcesses(textBox1.Text); 
                string[] Minfo=new string[6];
                foreach(Process pro in myProcess)
                {
                    Minfo[0] = pro.ProcessName;
                    Minfo[1] = pro.Id.ToString();
                    Minfo[2] = pro.Threads.Count.ToString();
                    Minfo[3] = pro.BasePriority.ToString();
                    Minfo[4] = (pro.WorkingSet/1024)+"K";
                    Minfo[5] = (pro.VirtualMemorySize / 1024) + "k";
                    ListViewItem item = new ListViewItem(Minfo);
                    listView1.Items.Add(item);
                }
            }
            catch (Exception)
            { MessageBox.Show("远程计算机连接失败"); }

  

以上是关于获取计算机上的所有进程的主要内容,如果未能解决你的问题,请参考以下文章

如何获得在没有 WMI 的远程计算机上运行的进程的所有者

片段内容未出现在手机上

在不同计算机上的进程之间进行通信

批处理脚本从所有用户获取计算机上的所有打印机

获取所有逻辑分区

Java多线程概述及创建