随笔-66  评论-443  文章-1  trackbacks-19

用C#开发较完整的Windows任务管理器

这个代码没有什么技术含量,仅仅使用 WMI 和 API 实现了 Windows 任务管理器的部分功能。

但代码里面封装了一个 SystemInfo 的类,它提供了一些方法,可以获取以下系统信息:

CPU个数,CPU占用率
可用内存,物理内存
分区信息
进程列表,结束指定进程
根据物理地址获取 IP 地址,根据 IP 地址获取物理地址
获取网络信息
查找所有应用程序标题







源代码:/Files/lemony/SystemInfo.rar

注:关于获取网络信息的方法可以参考文章:http://www.cnblogs.com/lemony/archive/2007/03/29/692967.html ,然而后来我发现其实 WMI 也能实现这个功能,只是我懒得改而已^_^。

posted on 2007-04-11 09:47 柠檬的 阅读(12309) 评论(47) 编辑 收藏

评论:
#1楼 2007-04-11 09:58 | 大豆男生      
很不错!哈哈,我也做过Windows任务管理器。
 回复 引用 查看   
#2楼 2007-04-11 10:02 | i.Posei      
“软件发布区”
似乎更适合!

 回复 引用 查看   
#3楼 2007-04-11 10:03 | iCaca      
有意思
 回复 引用 查看   
#4楼 2007-04-11 10:12 | t-mac
不知那个CPU使用记录图表是怎么做的
 回复 引用   
#5楼[楼主] 2007-04-11 10:14 | 柠檬的      
@t-mac

是我做的一个用户控件,代码都在工程里面,你可以看看。

 回复 引用 查看   
#6楼 2007-04-11 10:19 | 生米煮成稀饭      
炸一看还以为是真的任务管理器呢
 回复 引用 查看   
#7楼 2007-04-11 10:21 | 网魂小兵      
谢谢,下来看看!
 回复 引用 查看   
#8楼 2007-04-11 10:28 | Jeffers Yuan      
不错,非常好,谢谢 柠檬的 !
 回复 引用 查看   
#9楼 2007-04-11 10:36 | t-mac
网络信息和和磁盘信息控件的anchor没有调整,有点别扭哟
 回复 引用   
#10楼[楼主] 2007-04-11 10:44 | 柠檬的      
@t-mac

呵呵,发布比较急,有些地方没有调整。

 回复 引用 查看   
#11楼 2007-04-11 10:53 | 命运有自己的梦!      
呵呵,想不到调试的时候还在看我的博客,谢谢支持!
 回复 引用 查看   
#12楼[楼主] 2007-04-11 10:58 | 柠檬的      
@命运有自己的梦!

好文章当然要看了,呵呵。

 回复 引用 查看   
#13楼 2007-04-11 11:06 | 代码机器人[未注册用户]
好.. 做得跟Windows的任务管理器好像..
 回复 引用   
#14楼 2007-04-11 13:30 | guojiang[未注册用户]
收下,谢谢
 回复 引用   
#15楼 2007-04-11 14:26 | jhyc[未注册用户]
恩。很不错啊,咋一看还以为是win的管理器呢,学习中!
 回复 引用   
#16楼 2007-04-11 14:45 | yunhuasheng      
哈哈,感觉用WMI 和 API 做起类似的东西挺方便的,不知道还有没有别的方法.
 回复 引用 查看   
#17楼 2007-04-11 15:49 | i.Posei      
遇到个问题!我的电脑是双核的!
用系统自带的任务管理器,是可以看到两个曲线图的!

 回复 引用 查看   
#18楼[楼主] 2007-04-11 15:55 | 柠檬的      
@i.Posei

事实上 SystemInfo 类里面封装了CPU个数的方法,你可以根据这个来生成多个曲线图。

然而 SystemInfo 里面获取的CPU使用率是总的使用率。你可以修改一下代码。这个我之前没有考虑到,不好意思。

 回复 引用 查看   
#19楼 2007-04-12 22:40 | Shark Xu      
Very good(Because I can't write in Chinese in my os, please forgive me)
 回复 引用 查看   
#20楼 2007-09-14 20:54 | bluewind23[未注册用户]
学习
 回复 引用   
#21楼 2007-09-17 16:33 | shenke[未注册用户]
真的不错。谢谢。
 回复 引用   
#22楼 2007-10-30 07:46 | chesekinng[未注册用户]
很想学习如何画CPU使用率的曲线图的?
 回复 引用   
#23楼 2008-01-11 14:05 | yhl[未注册用户]
谢谢了,很不错,
 回复 引用   
#24楼 2008-02-27 14:32 | joelean[未注册用户]
谢谢了
 回复 引用   
#25楼 2008-04-09 11:50 | Drg [未注册用户]
楼主,我要收集客户pc的电脑信息,比如cpu的型号,内存的型号品牌等等,现在有两种方法,远程获取,本地安装软件发送到服务器。想请你帮帮忙看怎么搞,有没有现成的代码,我用的是C#。有请发送到我的邮箱,或者可以QQ联系。谢
 回复 引用   
#26楼 2008-05-03 20:07 | flon[未注册用户]
看了你的文章受益匪浅啊,只是有一点还想请教,有考虑过怎么使一个进程暂停,或者继续吗,谢谢你
 回复 引用   
#27楼 2008-06-23 09:58 | 宇恒[未注册用户]
时常不错,用WMI,太慢了,还是您的方法好。
 回复 引用   
#28楼 2008-07-08 17:09 | Martin527[未注册用户]
感谢楼主,我正需要谢谢
 回复 引用   
#29楼 2008-07-17 21:18 | aword[未注册用户]
楼主知不知道怎么结束一个“任务”(不是结束进程),谢谢!
 回复 引用   
#30楼[楼主] 2008-07-22 12:43 | 柠檬的      
--引用--------------------------------------------------
aword: 楼主知不知道怎么结束一个“任务”(不是结束进程),谢谢!
--------------------------------------------------------

好像是通过任务找到进程,再结束进程。

 回复 引用 查看   
#31楼 2008-11-13 15:45 | tianlang2008[未注册用户]
楼主知道怎么直接调用任务管理器中的关机命令?
 回复 引用   
#32楼 2009-01-20 01:36 | wisper[未注册用户]
想请教是如何得到所有应用程序标题的……

这个问题一直没搞明白

 回复 引用   
#33楼 2009-02-17 11:02 | 张彦青
我的QQ是273004788,做Windows任务管理器的朋友加我一下QQ,谢谢!!
 回复 引用   
#34楼 2009-03-03 18:00 | miao
也没啥有技术性的难题啊。进程的那些属性,用API就可以获取到。CPU曲线控件做也很简单。
 回复 引用   
#35楼 2009-04-27 15:46 | 伊一线天      
兄弟啊,用结束任务(不是进程)不容易,好像要通过任务搜索到进程,通过进程关闭任务,不是结束啊。比如我的电脑窗口
 回复 引用 查看   
#36楼 2009-06-13 10:02 | 学习者[未注册用户]
请问那写非托管的API函怎么知道属于哪个DLL的,而且这些DLL里面又有其他什么函数呢,请大侠指教。有这方面的帮助文档吗?
 回复 引用   
#37楼 2009-07-07 22:10 | 张波sun      
不错,正需要,多谢LZ分享
 回复 引用 查看   
#38楼 2009-11-04 16:53 | koko0228koko[未注册用户]
请问,为什么得到的CPU、内存等数据和Windows的任务管理器不一致呢?
 回复 引用   
#39楼 2009-11-06 20:47 | zsy18[未注册用户]
可以,支持一下,以后希望多多指教!
 回复 引用   
#40楼 2009-11-18 19:24 | lxcsmallcity      
楼主你好,我最近也在做关于系统信息获取这方面的程序,有些功能点借鉴了你的这个代码,在此表示感谢。
您可以到我的博客看看http://www.cnblogs.com/lxcsmallcity/

 回复 引用 查看   
#41楼 2010-06-10 20:15 | 风遥      
xiexie ^_^
 回复 引用 查看   
#42楼 2010-06-23 22:24 | hhxq001      
希望柠檬装封一个完整的管理器。期待中。。。
 回复 引用 查看   
#43楼 2010-11-09 13:15 | 西路      
您好,我认真看了一下源代码,暂时有一个问题:

程序启动的时候默认是在第三个选项卡上,但是我一直没有找到切换到第一个或第二个选项卡的代码。很迷惑,期待您的解答

 回复 引用 查看   
#44楼 2010-11-11 22:05 | ttsite      
看看。应该不错
 回复 引用 查看   
#45楼 2010-12-03 17:36 | wenzhu123      
请问如何结束一个应用程序(非进程)?
 回复 引用 查看   
#46楼 2011-04-19 17:30 | luckuny      
很不错,收藏了
 回复 引用 查看   
#47楼 2011-12-16 14:21 | 宇智波、喵      
感激不尽啊 正是我需要的!!!!!
 回复 引用 查看   
昵称:柠檬的
园龄:4年10个月
粉丝:51
关注:0
<2007年4月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

搜索

 
 

我的标签

随笔分类

相册

链接

最新评论