系统资源 就在Vista桌面看
技术与开发
想在桌面上直观地看到系统资源占用的情况吗?在Vista系统中,这个愿望非常容易实现,想知道是怎么做出来的吗?
要制作桌面显示系统资源的小工具(下载地址:http://www.shudoo.com/bzsoft,本文以Vista版为例,如果想了解XP版的制作请登录bbs.shudoo.com),首先要设计系统资源信息的提取功能,通过调用任务管理器的API获取当前系统资源占用的实时信息,然后设计工具的外壳,最后将提取出来的信息加入工具中即可。利用相同原理,我们还可以制作CPU温度工具等。
小知识:最简单的侧边栏小工具仅由一个HTML文件和一个XML定义文件组成。当然,大多数小工具还包含其他文件,例如图像文件(PNG和JPG)、样式表(CSS)和脚本文件(JavaScript和VBScript源文件)。所有内容都存储在一个压缩文件中,并且以.gadget格式发布。
第一步:提取系统资源信息
首先定义任务管理器的路径,接着利用命令提示符调用任务管理器,然后通过任务管理器来获取系统当前的CPU和内存信息,最后把获得的信息返回到工具的窗口界面。运行系统的记事本程序,另存为gadget.html文件。在文件中输入VBScript代码,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):
'获取CPU和内存的当前使用信息,以及将这些信息转换为百分比数值
proText.innerText = cpucount + archi + " / " + (System.Machine.totalMemory - System.Machine.availableMemory) + "MB" + " / " + System.Machine.totalMemory + "MB";
memoryPercentText.innerText = "CPU";
test1Text.innerText = pro + "%" + " ";
totmemText.innerText = "RAM";
test2Text.innerText = " " + memoryPercent;
statusBar.width = pro/2;
statusBar2.width = memoryBar;
window.setTimeout(displayUsage, 1000);
第二步:设计工具界面
由于微软对侧边栏界面的大小有规定,其中界面的最大宽度不能超过130像素。在规定的界面中设置显示信息的字体、颜色、宽度等。在gadget.html文件中添加相关代码,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):
'设置窗口大小、颜色、字体、字号,读者可以自行修改,宽度不能超过130
width:130;
height:67;
color: #6699cc;
font-family: Segoe UI;
font-weight: 0;
font-size: 7.4pt;
margin: 0 0 0 0;
padding: 5px 5px 0 0;
}
#totmemText
{
cursor: default;
color: #000000;
font-weight: default;
margin: 0 0 0 10px;
第三步:将提取的系统资源信息装入工具中
我们通过XML文件把提取的系统资源信息装入工具中。新建一个XML文件,另存为gadget.xml,在里面输入相关代码,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):
设置工具的属性,包括工具的名称、版本、作者、工具说明等,读者可以自行修改
〈name〉CPU/内存信息〈/name〉
〈namespace〉SFKilla〈/namespace〉
〈version〉8.15〈/version〉
〈author name="pcw"〉
〈info url="http://www.pcpw.com" /〉
〈logo src="pcw.png" /〉
〈/author〉
〈copyright〉?2008〈/copyright〉
〈description〉动态显示CPU/内存的使用情况〈/description〉
〈icons〉
〈icon height="48" width="48" src="icon.png"/〉
第四步:封装工具
现在将网页文件gadget.html、XML文件gadget.xml,以及图标文件icon.png,放到一个文件夹里面。然后将三个文件进行压缩,完成后将后缀名.rar改成.gadget即可。
编后
本文的侧边栏小工具主要是显示系统资源信息,其实大家还可以将功能进行扩展,添加CPU温度、占用最多内存的进程等。当然,我们还可以利用相同的原理设计一些较常用的小工具,例如股票信息实时显示等。