本文來自: http://www.cnblogs.com/kay/archive/2008/11/25/1340387.htmlhtml
Process 類的做用是對系統進程進行管理,咱們使用Process類中的一些方法結合Winform開發個簡單的進程管理器:spa
在使用Process類的時候,先導入命名空間System.Diagnostics。orm
使用Winform畫出如上的界面,數據顯示使用的是Listview。htm
在窗體的Load事件中寫入以下代碼:blog
1: private void Form1_Load(object sender, EventArgs e)
2: {
3:
4: listView1.FullRowSelect = true;
5:
6: GetProcess();
7: }
其中GetProcess方法以下:進程
1: private void GetProcess()事件
2: {
3: listView1.Items.Clear();
4:
5: Process[] proList = Process.GetProcesses(".");//得到本機的進程
6:
7: lblNum.Text = proList.Length.ToString(); //當前進程數量
8: foreach (Process p in proList)
9: {
10: ListViewItem lvi = new ListViewItem();
11:
12: lvi.Text = p.ProcessName;
13:
14:
15: lvi.SubItems.AddRange(new string[] { p.Id.ToString(),p.PrivateMemorySize64.ToString() }); //進程ID 使用內存
16:
17: listView1.Items.Add(lvi);
18: }
19: }
若是想終止一個進程,先選中一個進程,點擊上面的進程按鈕:內存
click事件代碼以下:開發
1: private void button2_Click(object sender, EventArgs e)
2: {
3: if (listView1.SelectedItems.Count > 0)
4: {
5: try
6: {
7: string proName = listView1.SelectedItems[0].Text;
8: Process[] p = Process.GetProcessesByName(proName); //根據進程命得到指定的進程
9: p[0].Kill(); //殺死該進程
10: MessageBox.Show("進程關閉成功!");
11: GetProcess();
12: }
13: catch
14: {
15: MessageBox.Show("沒法關閉此進程!");
16: }
17:
18: }
19: else
20: {
21: MessageBox.Show("請選擇要終止的進程!");
22: }
23: }
固然咱們能夠調用Process的start方法來開啓一個進程:get
啓動按鈕的事件以下:
1: private void button1_Click(object sender, EventArgs e)
2: {
3: if (textBox1.Text != string.Empty)
4: {
5: Process.Start(textBox1.Text); //啓動一個進程
6: }
7: else
8: {
9: MessageBox.Show("請輸入啓動項");
10: textBox1.Focus();
11: }
12:
13: }
運行程序,開始使用本身的進程管理器吧~~~~~