您的位置:软件 > 开发者网络 > 开发工具 > 开发专栏 > VB > 正文
VB.NET实现Windows进程管理器
[文章信息]
作者:马金虎
时间:2004-01-28
出处:yesky
责任编辑:方舟
[文章导读]
本文详细介绍了在Visual Basic .Net中实现类似Windows进程管理器的具体方法......
advertisement
热点推荐
· 天极网软件频道改版调查
· 在ASP.NET程序中创建唯一序号
· 用JVM工具接口创建调试和分析代理
· Win 2000如何安装配置防火墙
· 防范Windows消息钩子的侵入
[正文]

1 2 3 4  下一页



  我的计算机系统是Windows 2000服务器版,回想当初从Win 98升级到Win 2000时,主要原因除了在Win 98下无法安装Visual Studio .Net 2002外,另外一个原因就是Win 2000自带一个我非常喜欢的可以管理进程的应用程序,通过这个管理器可以得到计算机到底运行了多少进程,在掌握那些进程属于正常进程的情况下,就可以得到计算机中那些是不正常的进程,从而判断计算机是否感染了病毒或黑客程序。可见Windows的进程管理器还是具有很高的实用价值的。其实用Visual Basic .Net来实现类似的功能应该算是比较方便的,因为在.Net FrameWork SDK中提供了可以获得计算机进程数据以及操控计算机进程相关的类库。本文的以下内容就来详细介绍在Visual Basic .Net中实现类似Windows进程管理器的具体方法。

  一.本文程序设计、调试和运行的环境:

  (1).微软公司视窗2000服务器版。

  (2).Visual Studio .Net正式版,.Net FrameWork SDK版本号3705。

  二.简介Visual Basic .Net实现Windows进程管理器时的主要类库:

  在用Visual Basic .Net实现Windows进程管理器中最重要,也是最频繁的就是Process类。Process类位于命名空间System.Diagnostics中,使用者可以提供使用它来操控计算机进程,如启动、停止、控制进程等。和得到与进程相关的属性,如线程集、加载的模块(即加载的DLL文件和EXE文件)和各种性能信息(如进程当前使用的内存量)等。其实读者只需对下面介绍的程序进行一定的修改,所实现的功能就大大强于Windows的进程管理器功能,但前提是掌握以下表01和表02中所列出的Process的常用属性、常用方法及其说明。

属性 说明
BasePriority 获取关联进程的基本优先级。
EnableRaisingEvents 获取或设置在进程终止时是否应激发Exited事件。
ExitCode 获取关联进程终止时指定的值。
ExitTime 获取关联进程退出的时间。
Handle 返回关联进程的本机句柄。
HandleCount 获取由进程打开的句柄数。
HasExited 获取指示关联进程是否已终止的值。
Id 获取关联进程的唯一标识符。
MachineName 获取关联进程正在其上运行的计算机的名称。
MainModule 获取关联进程的主模块。
MainWindowHandle 获取关联进程主窗口的窗口句柄。
MainWindowTitle 获取进程的主窗口标题。
MaxWorkingSet 获取或设置关联进程的允许的最大工作集大小。
MinWorkingSet 获取或设置关联进程的允许的最小工作集大小。
Modules 获取已由关联进程加载的模块。
NonpagedSystemMemorySize 获取分配给此进程的未分页的系统内存大小。
PagedMemorySize 获取分页的内存大小。
PagedSystemMemorySize 获取分页的系统内存大小。
PeakPagedMemorySize 获取峰值分页内存大小。
PeakVirtualMemorySize 获取峰值虚拟内存大小。
PeakWorkingSet 获取峰值工作集大小。
PriorityBoostEnabled 获取或设置一个值,该值指示主窗口拥有焦点时是否由操作系统暂时提升关联进程的优先级。
PriorityClass 获取或设置关联进程的总体优先级类别。
PrivateMemorySize 获取专用内存大小。
PrivilegedProcessorTime 获取此进程的特权处理器时间。
ProcessName 获取该进程的名称。
StartTime 获取关联进程启动的时间。
Threads 获取在关联进程中运行的一组线程。
TotalProcessorTime 获取此进程的总的处理器时间。
UserProcessorTime 获取此进程的用户处理器时间。
VirtualMemorySize 获取进程的虚拟内存大小。
WorkingSet 获取关联进程的物理内存使用情况。

表01:Process类常用属性及其说明

  可见Process类提供了很多获取计算机进程相关信息的属性,在下面介绍的用Visual Basic .Net实现Windows进程管理器中,只需要使用Process中的ProcessName、Id、StartTime和PrivateMemorySize区区四个属性。同样Process提供了许多用以操控进程的方法,在下面介绍的程序中,调用了GetProcessById、Kill、Close、GetProcesses等方法来获取计算机进程数据和操控进程状态。Process类中的其他常用方法及其说明见下表所示:

方法 说明
Close 释放与此组件关联的所有资源。
CloseMainWindow 通过向进程的主窗口发送关闭消息来关闭拥有用户界面的进程。
CreateObjRef 创建一个对象,该对象包含生成用于与远程对象进行通讯的代理所需的全部相关信息。
EnterDebugMode 将Process实例置于与以特殊模式运行的操作系统进程进行交互的状态。
GetCurrentProcess 获取新的Process实例并将其与当前活动的进程关联。
GetLifetimeService 检索控制此实例的生存期策略的当前生存期服务对象。
GetProcessById 创建新的Process实例,并将其与您指定的现有进程资源关联。
GetProcesses 创建新的Process实例的数组,并将它们与现有进程资源关联。
GetProcessesByName 创建新的Process实例的数组,并将它们与共享指定的进程名称的所有现有进程资源关联。
InitializeLifetimeService 获取控制此实例的生存期策略的生存期服务对象。
Kill 立即停止关联的进程。
LeaveDebugMode 使Process实例离开允许它与以特殊模式运行的操作系统进程交互的状态。
Refresh 放弃有关关联进程的、已缓存到该进程组件内的任何信息。
Start 启动进程资源并将其与Process实例关联。
WaitForExit 设置等待关联进程退出的时间,并在该段时间结束前或该进程退出前,阻止当前线程执行。
WaitForInputIdle 使Process实例等待关联进程进入空闲状态。

表02:Process类常用方法及其说明


1 2 3 4  下一页

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载

天极社区邀请您:写博客日记  上传相片   论坛聊天  订阅电子杂志  推荐网摘   免费图铃工具
笔名:   请您注意:

 遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

 天极网拥有管理笔名和留言的一切权利。
评论:
 

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • VB.NET启动并监测外部程序
  • 主板超频特色技术GIGA技嘉篇
  • Win 2000如何安装配置防火墙
  • 防范Windows消息钩子的侵入
  • 性价比之选 AGP显卡的告别秀
  • 大学校园生活之聊天也疯狂
  • Fireworks制作GIF动画Banner
  • 金山打击外挂 遭网络游戏玩家起诉
  • 完全公测《开天》掀起滔滔巨浪
  • Advertisement

    天极无线
    待机彩图    >>更多
    多彩动画    >>更多
    美妙和弦    >>更多
    天使在唱歌
    壁虎漫步
    PrettyBoy
    LoveLoveLove
    我是你的小小狗
    单身情歌
    十面埋伏
    祝酒歌
    回心转意
    波斯猫
    太委屈
    S.H.E
    潘玮柏
    M2M
    蔡依林
    阿牛
    林志炫
    陈弈迅
    刀郎
    黑龙
    S.H.E
    陶晶莹
    情人玫瑰坊
    音乐风云
    新片速递
    神秘测试
    都市约会
    ·天极彩信天天精彩
    ·图铃梦工厂下载无限!
    ·找寻童真,卡通专题
    ·夏日激情交友社区!
    ·星座运程,预测人生

    CSEEK搜索