用C#获取进程息.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用C#获取进程息

用C#获取进程信息(转) 2008-10-07 10:08 本文将以一个简单的例子来说明如何使用C#获得当前处于激活状态的进程并读取某个特定ID 进程的基本信息。 现在有很多软件都具有读取系统进程的功能,比较著名的是Customizer XP,它是一个用来设置Windows XP 系统各种设置的软件。这个软件其中有一个功能就是能够打开或关闭系统运行时加载的程序。当然,本文没有做到Customizer XP 那么美观和细化的程度,但是我想只要知道了基本的方法,制作这样的功能是很简单的。 这个例子使用了.NET Framework 的Process 类来获得激活进程的信息,给出了当前激活进程的列表,并且能够显示某一个进程的一些基本信息。制作过程一、运行Visual Studio.NET,新建Visual C#.NET 工程,这里取名为ProcessInfo。二、在解决方案资源管理器中, 将Form1.cs 改名为frmProcessInfo.cs(此项为可选)。三、将Form1 的Text 属性改为Process Information,Font 改为Verdana,9pt(此项为可选)。四、在窗体上添加三个控件:两个按钮和一个TextBox。对控件的属性进行修改,如下: 控件 Name属性 Text属性 Button1 btnGetProcessList 点击这里获得当前激活进程列表 Button 2 btnGetProcessByID 获得指定ID 的进程信息: TextBox txtProcessID N/A 调整各控件的位置,此时用户界面类似于下图: 五、进入frmProcessInfo.cs 代码编辑器。在文件头部添加以下一行代码: using System.Diagnostics; 【注】System.Diagnostics 命名空间提供特定的类,使您能够与系统进程、事件日志和性能计数器进行交互。 六、在frmProcessInfo.cs[设计]中双击btnGetProcessList 按钮。系统自动添加btnGetProcessList_Click 事件。填写以下代码到btnGetProcessList_Click 事件中: string str = ; Process[] processes; //Get the list of current active processes. processes = System.Diagnostics.Process.GetProcesses(); //Grab some basic information for each process. Process process; for(int i = 0;iprocesses.Length-1;i++) { process = processes[i]; str = str + Convert.ToString(process.Id) + : + process.ProcessName + \r\n; } //Display the process information to the user System.Windows.Forms.MessageBox.Show(str); //Default the TextBox value to the first process ID - for the GetByID button txtProcessID.Text = processes[0].Id.ToString(); 【注】 Process 组件提供对正在计算机上运行的进程的访问。用最简短的话来说,进程就是当前运行的应用程序。线程是操作系统向其分配处理器时间的基本单位。线程可执行进程的任何一部分代码,包括当前由另一线程执行的部分。 对于启动、停止、控制和监视应用程序等任务,Process 组件是很有用的工具。使用Process 组件,可以获取当前运行的进程的列表,或者启动新的进程。Process 组件用于访问系统进程。初始化Process 组件后,可使用该组件来获取有关当前运行的进程的信息。此类信息包括线程集、加载的模块(.dll 和.exe 文件)和性能信息(如进程当前使用的内存量)。 系统进程在系统上由其进程标识符唯一标识。与许多Windows 资源一样,进程也由其句柄标识,而句柄在计算机上可能不唯一。句柄是表示资源标识符的一般术语。即使进程已退出,操作系统仍保持进程句柄,该句柄通过Process 组件的Handle 属性访问。因此,可以获取进程的管理信息,如ExitCode(通常,或者为零表示成功,或者为非零错误代码)和ExitTime。句柄是非常有价值的资源,所以句柄泄漏比内存泄漏危害更大

文档评论(0)

jiuqie957379 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档