网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C#应用
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用c#写的asp+域名查询程序.
.使用C#创建SQL Server的存储过程.
.关于C#中timer类 在C#里关于定时.
.C#一个象棋游戏程序.
.从Internet上抓取指定URL的源码的.
.C# 中启动进程的三种方法.
.用CDO.Message打造邮件发送程序.
.如何用C#将数据库中的记录制成XML.
.C#将文件保存到数据库中或者从数.
.C# Operate Excel File .
.利用c#制作简单的留言板(3).
.C#实现SMTP服务器,使用TCP命令实.
.C# 参考之访问关键字:base、this.
.病毒及流氓软件自我复制的简单实.
.C#用代码打开软键盘.
.C#将DateTable表数据导出到Excel.
.网页表单自动填写技术(gmail为例) .
.利用正则表达式来反转一句话,以单.
.C#中实现DataGrid双向排序.
.c# 正确读取存储中文,以及如何获.

C#下的查杀进程

发表日期:2006-5-14


    .net对进程管理的封装非常好,通过System.Diagnostics.Process.GetProcesses()方法可以获得系统内各进程的数组,通过枚举可获得系统内的所有进程(比Windows自带的进程浏览器看到的还多)。

    ProcessName属性获得的是文件名的前缀,即NotePad,不包含后面的.exe。


    要获得更多的信息,需要取得Modules属性数组,但并不是每个进程都能获取Modules属性,所以必须要使用try..catch语句排除异常。该数组的第一个成员[ 0 ].FileName包含了执行程序的完整文件名,等同于ProcessModule;序号大于0的成员往往包含该程序调用的dll信息,得到的结果很有点像反木马程序。

    Kill()方法用来杀进程,被杀的程序不会弹出类似保存文件的对话框,是个十足的冷血的快刀手。

    StartInfo属性是用于启动新进程的,不适用于检索已运行的进程。

private void btnProcess_Click(object sender, System.EventArgs e)
        {
            System.Diagnostics.Process []myPs ;
            myPs=System.Diagnostics.Process.GetProcesses();
            this.richTextBox1.Clear();
            foreach (System.Diagnostics.Process p   in myPs)
            {
                if (p.Id!=0 )
                {
                    string myS="进程名称"+p.ProcessName+"  ID:"+p.Id.ToString();
                    try//由于进程不同,有的进程不包含Modules信息,所以要用try保护
                    {
                        if (p.Modules !=null)
                            if (p.Modules.Count>0)
                            {
                                System.Diagnostics.ProcessModule pm=p.Modules[0];

                                myS+="\n Modules[0].FileName:"+pm.FileName;
                                myS+="\n Modules[0].ModuleName:"+pm.ModuleName;
                                myS+="\n Modules[0].FileVersionInfo:\n"+pm.FileVersionInfo.ToString();
                                if (pm.FileName.ToLower()==this.textBox1.Text.Trim().ToLower())
                                    p.Kill();
                            }
                    }
                    catch
                    {}
                    finally
                    {
                        this.richTextBox1.Text += myS+"\n==========================\n";
                    }
                }
            }

 

        程序的执行结果片段:

进程名称SearchNet  ID:3092
 Modules[0].FileName:C:\Program Files\SearchNet\SearchNet.exe
 Modules[0].ModuleName:SearchNet.exe
 Modules[0].FileVersionInfo:
File:             C:\Program Files\SearchNet\SearchNet.exe
InternalName:     SearchNet
OriginalFilename:
FileVersion:      1, 0, 2, 4
FileDescription:  IE地址栏搜索程序
Product:          地址栏搜索
ProductVersion:   1, 0, 2, 4
Debug:            False
Patched:          False
PreRelease:       False
PrivateBuild:     False
SpecialBuild:     False
Language          中文(中国)

==========================
进程名称svchost  ID:1700
 Modules[0].FileName:C:\WINDOWS\system32\svchost.exe
 Modules[0].ModuleName:svchost.exe
 Modules[0].FileVersionInfo:
File:             C:\WINDOWS\system32\svchost.exe
InternalName:     svchost.exe
OriginalFilename: svchost.exe
FileVersion:      5.1.2600.2180 (xpsp_sp2_rtm.040803-2158)
FileDescription:  Generic Host Process for Win32 Services
Product:          Microsoft® Windows® Operating System
ProductVersion:   5.1.2600.2180
Debug:            False
Patched:          False
PreRelease:       False
PrivateBuild:     False
SpecialBuild:     False
Language          英语(美国)

上一篇:将指定网页添加到收藏夹的方法(c#) 人气:7251
下一篇:发送邮件程序(Csharp2005) 人气:7895
浏览全部C#的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐