none
列出C#进程以及详细信息 RRS feed

  • 常规讨论

  • 建立一个listBox将进程名称遍历进去
    this.listBox1.Items.Clear();
    

      Process[] MyProcesses

      {

      }

      

      选中listBox里面的项后将进程详细信息显示在右面的Label中

    try
    

      {

    string ProcessName=this.listBox1.Text;this.groupBox1.Text=ProcessName+"进程的详细信息";

      Process[] MyProcess

    =Process.GetProcessesByName(ProcessName);this.label1.Text="进程影象名:"+MyProcess[0].ProcessName;this.label2.Text="进程ID:"+MyProcess[0].Id; this.label3.Text="启动线程树:"+ MyProcess[0].Threads.Count.ToString(); this.label4.Text="CPU占用时间:"+ MyProcess[0].TotalProcessorTime.ToString(); this.label5.Text="线程优先级:"+ MyProcess[0].PriorityClass.ToString(); this.label6.Text="启动时间:"+ MyProcess[0].StartTime.ToLongTimeString(); this.label7.Text="专用内存:"+(

      MyProcess[

      PeakVirtualMemorySize

      PeakPagedMemorySize

      PagedSystemMemorySize

      PagedMemorySize

      NonpagedSystemMemorySize

      WorkingSet

      VirtualMemorySize

      {MessageBox.Show(

    0].PrivateMemorySize/1024).ToString()+"K";this.label8.Text="峰值虚拟内存:"+(MyProcess[0]./1024).ToString()+"K";this.label9.Text="峰值分页内存:"+(MyProcess[0]./1024).ToString()+"K";this.label10.Text="分页系统内存:"+(MyProcess[0]./1024).ToString()+"K";this.label11.Text="分页内存:"+(MyProcess[0]./1024).ToString()+"K";this.label12.Text="未分页系统内存:"+(MyProcess[0]./1024).ToString()+"K";this.label13.Text="物理内存:"+(MyProcess[0]./1024).ToString()+"K";this.label14.Text="虚拟内存:"+(MyProcess[0]./1024).ToString()+"K";}catch(Exception Err)"没有此进程,无法获取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);//不处理异常 }
    =Process.GetProcesses();foreach(Process MyProcess in MyProcesses)this.listBox1.Items.Add(MyProcess.ProcessName);this.listBox1.SelectedIndex=0;
    2009年6月1日 2:58