结合着上一篇,再写一个获取进程详细信息的代码
建立一个listBox将进程名称遍历进去
this.listBox1.Items.Clear();
 Process[] MyProcesses=Process.GetProcesses();
            Process[] MyProcesses=Process.GetProcesses();
 foreach(Process MyProcess in MyProcesses)
            foreach(Process MyProcess in MyProcesses)

 
             {
{
 this.listBox1.Items.Add(MyProcess.ProcessName);
                this.listBox1.Items.Add(MyProcess.ProcessName);
 
                            
 }
            }
 this.listBox1.SelectedIndex=0;
            this.listBox1.SelectedIndex=0;
 建立一个listBox将进程名称遍历进去
this.listBox1.Items.Clear();
 Process[] MyProcesses=Process.GetProcesses();
            Process[] MyProcesses=Process.GetProcesses(); foreach(Process MyProcess in MyProcesses)
            foreach(Process MyProcess in MyProcesses)
 
             {
{ this.listBox1.Items.Add(MyProcess.ProcessName);
                this.listBox1.Items.Add(MyProcess.ProcessName); 
                             }
            } this.listBox1.SelectedIndex=0;
            this.listBox1.SelectedIndex=0;选中listBox里面的项后将进程详细信息显示在右面的Label中
try

 
             {
{
 string ProcessName=this.listBox1.Text;
                string ProcessName=this.listBox1.Text;
 this.groupBox1.Text=ProcessName+"进程的详细信息";
                this.groupBox1.Text=ProcessName+"进程的详细信息";
 Process[] MyProcess=Process.GetProcessesByName(ProcessName);
                Process[] MyProcess=Process.GetProcessesByName(ProcessName);
 this.label1.Text="进程影象名:"+MyProcess[0].ProcessName;
                this.label1.Text="进程影象名:"+MyProcess[0].ProcessName;
 this.label2.Text="进程ID:"+MyProcess[0].Id;
                this.label2.Text="进程ID:"+MyProcess[0].Id;
 this.label3.Text="启动线程树:"+MyProcess[0].Threads.Count.ToString();
                this.label3.Text="启动线程树:"+MyProcess[0].Threads.Count.ToString();
 this.label4.Text="CPU占用时间:"+MyProcess[0].TotalProcessorTime.ToString();
                this.label4.Text="CPU占用时间:"+MyProcess[0].TotalProcessorTime.ToString();
 this.label5.Text="线程优先级:"+MyProcess[0].PriorityClass.ToString();
                this.label5.Text="线程优先级:"+MyProcess[0].PriorityClass.ToString();
 this.label6.Text="启动时间:"+MyProcess[0].StartTime.ToLongTimeString();
                this.label6.Text="启动时间:"+MyProcess[0].StartTime.ToLongTimeString();
 this.label7.Text="专用内存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
                this.label7.Text="专用内存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
 this.label8.Text="峰值虚拟内存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K";
                this.label8.Text="峰值虚拟内存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K";
 this.label9.Text="峰值分页内存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K";
                this.label9.Text="峰值分页内存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K";
 this.label10.Text="分页系统内存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K";
                this.label10.Text="分页系统内存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K";
 this.label11.Text="分页内存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K";
                this.label11.Text="分页内存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K";
 this.label12.Text="未分页系统内存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K";
                this.label12.Text="未分页系统内存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K";
 this.label13.Text="物理内存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K";
                this.label13.Text="物理内存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K";
 this.label14.Text="虚拟内存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K";
                this.label14.Text="虚拟内存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K";
 
            
 }
            }
 catch(Exception Err)
            catch(Exception Err)

 
             {
{
 
                
 MessageBox.Show("没有此进程,无法获取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
            MessageBox.Show("没有此进程,无法获取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
 //不处理异常
                //不处理异常
 }
            }
 try

 
             {
{ string ProcessName=this.listBox1.Text;
                string ProcessName=this.listBox1.Text; this.groupBox1.Text=ProcessName+"进程的详细信息";
                this.groupBox1.Text=ProcessName+"进程的详细信息"; Process[] MyProcess=Process.GetProcessesByName(ProcessName);
                Process[] MyProcess=Process.GetProcessesByName(ProcessName); this.label1.Text="进程影象名:"+MyProcess[0].ProcessName;
                this.label1.Text="进程影象名:"+MyProcess[0].ProcessName; this.label2.Text="进程ID:"+MyProcess[0].Id;
                this.label2.Text="进程ID:"+MyProcess[0].Id; this.label3.Text="启动线程树:"+MyProcess[0].Threads.Count.ToString();
                this.label3.Text="启动线程树:"+MyProcess[0].Threads.Count.ToString(); this.label4.Text="CPU占用时间:"+MyProcess[0].TotalProcessorTime.ToString();
                this.label4.Text="CPU占用时间:"+MyProcess[0].TotalProcessorTime.ToString(); this.label5.Text="线程优先级:"+MyProcess[0].PriorityClass.ToString();
                this.label5.Text="线程优先级:"+MyProcess[0].PriorityClass.ToString(); this.label6.Text="启动时间:"+MyProcess[0].StartTime.ToLongTimeString();
                this.label6.Text="启动时间:"+MyProcess[0].StartTime.ToLongTimeString(); this.label7.Text="专用内存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
                this.label7.Text="专用内存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K"; this.label8.Text="峰值虚拟内存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K";
                this.label8.Text="峰值虚拟内存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K"; this.label9.Text="峰值分页内存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K";
                this.label9.Text="峰值分页内存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K"; this.label10.Text="分页系统内存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K";
                this.label10.Text="分页系统内存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K"; this.label11.Text="分页内存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K";
                this.label11.Text="分页内存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K"; this.label12.Text="未分页系统内存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K";
                this.label12.Text="未分页系统内存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K"; this.label13.Text="物理内存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K";
                this.label13.Text="物理内存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K"; this.label14.Text="虚拟内存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K";
                this.label14.Text="虚拟内存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K"; 
             }
            } catch(Exception Err)
            catch(Exception Err)
 
             {
{ 
                 MessageBox.Show("没有此进程,无法获取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
            MessageBox.Show("没有此进程,无法获取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information); //不处理异常
                //不处理异常 }
            }下载地址:
[url]http://files.cnblogs.com/mgod/WindowsINI.rar[/url]
[url]http://files.cnblogs.com/mgod/WindowsINI.rar[/url]
转载于:https://blog.51cto.com/443065/92796