建立一個(gè)listBox將進(jìn)程名稱遍歷進(jìn)去
this.listBox1.Items.Clear();
Process[] MyProcesses=Process.GetProcesses();
foreach(Process MyProcess in MyProcesses)
{
this.listBox1.Items.Add(MyProcess.ProcessName);
}
this.listBox1.SelectedIndex=0;
選中l(wèi)istBox里面的項(xiàng)后將進(jìn)程詳細(xì)信息顯示在右面的Label中
try
{
string ProcessName=this.listBox1.Text;
this.groupBox1.Text=ProcessName+"進(jìn)程的詳細(xì)信息";
Process[] MyProcess=Process.GetProcessesByName(ProcessName);
this.label1.Text="進(jìn)程影象名:"+MyProcess[0].ProcessName;
this.label2.Text="進(jìn)程ID:"+MyProcess[0].Id;
this.label3.Text="啟動(dòng)線程樹(shù):"+MyProcess[0].Threads.Count.ToString();
this.label4.Text="CPU占用時(shí)間:"+MyProcess[0].TotalProcessorTime.ToString();
this.label5.Text="線程優(yōu)先級(jí):"+MyProcess[0].PriorityClass.ToString();
this.label6.Text="啟動(dòng)時(shí)間:"+MyProcess[0].StartTime.ToLongTimeString();
this.label7.Text="專用內(nèi)存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
this.label8.Text="峰值虛擬內(nèi)存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K";
this.label9.Text="峰值分頁(yè)內(nèi)存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K";
this.label10.Text="分頁(yè)系統(tǒng)內(nèi)存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K";
this.label11.Text="分頁(yè)內(nèi)存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K";
this.label12.Text="未分頁(yè)系統(tǒng)內(nèi)存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K";
this.label13.Text="物理內(nèi)存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K";
this.label14.Text="虛擬內(nèi)存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K";
}
catch(Exception Err)
{
MessageBox.Show("沒(méi)有此進(jìn)程,無(wú)法獲取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
//不處理異常
}
this.listBox1.Items.Clear();
Process[] MyProcesses=Process.GetProcesses();
foreach(Process MyProcess in MyProcesses)
{
this.listBox1.Items.Add(MyProcess.ProcessName);
}
this.listBox1.SelectedIndex=0;
選中l(wèi)istBox里面的項(xiàng)后將進(jìn)程詳細(xì)信息顯示在右面的Label中
try
{
string ProcessName=this.listBox1.Text;
this.groupBox1.Text=ProcessName+"進(jìn)程的詳細(xì)信息";
Process[] MyProcess=Process.GetProcessesByName(ProcessName);
this.label1.Text="進(jìn)程影象名:"+MyProcess[0].ProcessName;
this.label2.Text="進(jìn)程ID:"+MyProcess[0].Id;
this.label3.Text="啟動(dòng)線程樹(shù):"+MyProcess[0].Threads.Count.ToString();
this.label4.Text="CPU占用時(shí)間:"+MyProcess[0].TotalProcessorTime.ToString();
this.label5.Text="線程優(yōu)先級(jí):"+MyProcess[0].PriorityClass.ToString();
this.label6.Text="啟動(dòng)時(shí)間:"+MyProcess[0].StartTime.ToLongTimeString();
this.label7.Text="專用內(nèi)存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
this.label8.Text="峰值虛擬內(nèi)存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K";
this.label9.Text="峰值分頁(yè)內(nèi)存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K";
this.label10.Text="分頁(yè)系統(tǒng)內(nèi)存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K";
this.label11.Text="分頁(yè)內(nèi)存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K";
this.label12.Text="未分頁(yè)系統(tǒng)內(nèi)存:"+(MyProcess[0].NonpagedSystemMemorySize/1024).ToString()+"K";
this.label13.Text="物理內(nèi)存:"+(MyProcess[0].WorkingSet/1024).ToString()+"K";
this.label14.Text="虛擬內(nèi)存:"+(MyProcess[0].VirtualMemorySize/1024).ToString()+"K";
}
catch(Exception Err)
{
MessageBox.Show("沒(méi)有此進(jìn)程,無(wú)法獲取信息!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
//不處理異常
}