欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

浅谈C#中Process类的使用详解

程序员文章站 2023-12-20 14:26:22
process类的作用是对系统进程进行管理,我们使用process类中的一些方法结合winform开发个简单的进程管理器: 在使用process类的时候,先导入命名...

process类的作用是对系统进程进行管理,我们使用process类中的一些方法结合winform开发个简单的进程管理器:

浅谈C#中Process类的使用详解

在使用process类的时候,先导入命名空间system.diagnostics。
使用winform画出如上的界面,数据显示使用的是listview。
在窗体的load事件中写出如下代码:

复制代码 代码如下:

 private void form1_load(object sender, eventargs e)  
 {  

    listview1.fullrowselect = true;  

    getprocess();  
 }

其中getprocess方法如下:
复制代码 代码如下:

 private void getprocess()
 {
            listview1.items.clear();

            process[] prolist = process.getprocesses(".");//获得本机的进程

            lblnum.text = prolist.length.tostring(); //当前进程数量
            foreach (process p in prolist)
            {
                listviewitem lvi = new listviewitem();

                lvi.text = p.processname;

              
                lvi.subitems.addrange(new string[] { p.id.tostring(),p.privatememorysize64.tostring() }); //进程id  使用内存

                listview1.items.add(lvi);
            }
 }

如果想终止一个进程,先选中一个进程,点击上面的进程按钮:
click事件代码如下:
复制代码 代码如下:

 private void button2_click(object sender, eventargs e)
 {
             if (listview1.selecteditems.count > 0)
             {
                 try
                 {
                     string proname = listview1.selecteditems[0].text;
                     process[] p = process.getprocessesbyname(proname); //根据进程命获得指定的进程
                     p[0].kill(); //杀死该进程
                     messagebox.show("进程关闭成功!");
                     getprocess();
                 }
                 catch
                 {
                     messagebox.show("无法关闭此进程!");
                 }

             }
             else
             {
                 messagebox.show("请选择要终止的进程!");
             }
 }

当然我们可以调用process的start方法来开启一个进程:
启动按钮的事件如下:
复制代码 代码如下:

 private void button1_click(object sender, eventargs e)
 {
     if (textbox1.text != string.empty)
     {
         process.start(textbox1.text); //启动一个进程
     }
     else
     {
         messagebox.show("请输入启动项");
         textbox1.focus();
     }

 }

运行程序,开始使用自己的进程管理器吧~~~~~

上一篇:

下一篇: