列出C#进程以及详细信息
生活随笔
收集整理的這篇文章主要介紹了
列出C#进程以及详细信息
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
結合著上一篇,再寫一個獲取進程詳細信息的代碼
建立一個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);
????????????????//不處理異常
????????????} 下載地址:
[url]http://files.cnblogs.com/mgod/WindowsINI.rar[/url]
建立一個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);
????????????????//不處理異常
????????????} 下載地址:
[url]http://files.cnblogs.com/mgod/WindowsINI.rar[/url]
轉載于:https://blog.51cto.com/443065/92796
總結
以上是生活随笔為你收集整理的列出C#进程以及详细信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: O-C相关-08-动态类型与静态类型
- 下一篇: Python pip安装 win32co