独上高楼网站
  • Google
  •    你所在位置:首页 VS.netC#C#编程〉列出C#进程以及详细信息
  • 列出C#进程以及详细信息
  • 作者:佚名  文章来源:www.knowsky.com  发布日期:2008-07-04  浏览次数:94
  • 打印这篇文章
  • 建立一个listBox将进程名称遍历进去

    this.listBox1.Items.Clear();
    Process[] MyProcesses=Process.GetProcesses();
    foreach(Process MyProcess in MyProcesses)
    {
    this.listBox1.Items.Add(MyProcess.ProcessName);
    }
    this.listBox1.SelectedIndex=0;
    

      选中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[
    0].PrivateMemorySize/1024).ToString()+"K"; this.label8.Text="峰值虚拟内存:"+(MyProcess[0].
    PeakVirtualMemorySize
    /1024).ToString()+"K"; this.label9.Text="峰值分页内存:"+(MyProcess[0].
    PeakPagedMemorySize
    /1024).ToString()+"K"; this.label10.Text="分页系统内存:"+(MyProcess[0].
    PagedSystemMemorySize
    /1024).ToString()+"K"; this.label11.Text="分页内存:"+(MyProcess[0].
    PagedMemorySize
    /1024).ToString()+"K"; this.label12.Text="未分页系统内存:"+(MyProcess[0].
    NonpagedSystemMemorySize
    /1024).ToString()+"K"; this.label13.Text="物理内存:"+(MyProcess[0].
    WorkingSet
    /1024).ToString()+"K"; this.label14.Text="虚拟内存:"+(MyProcess[0].
    VirtualMemorySize
    /1024).ToString()+"K"; } catch(Exception Err) { MessageBox.Show("没有此进程,无法获取信息!",
    "信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information); //不处理异常 }
  • 打印这篇文章
  • 与本文主题相关的文章
  •    使用微软消息队列实现C#进程间通信
  • 返回首页