Windows 桌面边栏小工具开发入门

      准备为网站做一个桌面通知功能的工具,现在网上一般是html5+js的比较多。虽然html5+js现在是web的开发主流,但是我们应用一般是windows系统。并且应使用中,需要打开谷歌或其它的浏览器,这个很麻烦。

      在百度中找到一个windows的DesktopTools看以很好用,用来分析了一下。在网上下载http://www.uzzf.com/soft/53006.html 一个小工具。按照http://blog.csdn.net/mrxyz098/article/details/27982991 的说明。

     用winrar解压了一个.gadget文件。内面存放的都是html ,xml,js文件。 现在引用上面的链接说明分析一下。

     .xml文件,用于储存小工具的基本设置,包括名称、版本等等。以下就是一个典型的gadget.xml文件示例:

<?xml version="1.0" encoding="utf-8"?>     
<gadget>  
  <!--小工具名称-->  
  <name>test</name>    
  <!--小工具命名空间-->  
  <namespace><!--_locComment_text="{Locked}"-->Yourname.Test</namespace>    
  <!--小工具版本号-->  
  <version><!--_locComment_text="{Locked}"-->1.0.0.0</version>    
  <!--作者名称-->  
  <author name="">   
    <!--作者更多信息,链接和显示内容-->   
    <info url="http://www.msphome.cn" target="_blank">http://www.msphome.cn  
    </info>  
    <!--小工具的LOGO-->  
    <logo src="logo.png"/>   
  </author>  
  <!--小工具版权-->  
  <copyright><!--_locComment_text="{Locked}"-->? 2009</copyright>  
  <!--小工具简介-->    
  <description>简介。</description>    
  <icons>  
    <!--小工具图标-->  
    <icon height="48" width="48" src="icon.png"/>    
  </icons>     
  <hosts>     
    <host name="sidebar">  
      <!--是否自适应分辨率-->     
      <autoscaleDPI><!--_locComment_text="{Locked}"-->true</autoscaleDPI>  
      <!--小工具主体HTML文件-->  
      <base type="HTML" apiVersion="1.0.0" src="Test.html"/>    
      <permissions><!--_locComment_text="{Locked}"-->Full</permissions>  
      <!--小工具能正常运行的最低平台-->  
      <platform minPlatformVersion="1.0"/>  
      <!--当小工具被拖动时,显示的图形-->  
      <defaultImage src="drag.png"/>    
    </host>     
  </hosts>     
</gadget>  

      经过以上设置以后,系统就能识别出我们自己的小工具了。接下来,就是编写这个小工具了。 首先,我们先来了解下YourName.Gadget这个文件夹里面的文件。除了上面的gadget.xml文件,我们还需要存放上面定义的logo.png,icon.png,drag.png,这些图片文件。如果需要多语言支持,请建立语言文件夹,具体存放方法可以参考工具目录下微软自带的小工具。
      接下来,我们需要知道Gadget的编程接口。在MSDN的参考中,我们得知,在小工具的HTML文件中所包含的JS里面,我们可以使用System.Gadget对象,这个对象包括的事件、方法、属性请参考
      另外,在Gadget里面还有一些对象也是可用的,这些可能对我们非常有用。详情请查看博客园上面的文章(内容为英文)
在实际操作中还发现了一个有趣的事情,就是Gadget里面的JS脚本拥有比较高的权限,可以使用一些在浏览器里面被禁用的COM组件,比如adodb、FSO等等,并且里面的XMLHTTP组件读取也是可以跨域的,呵呵。这样我们可以很方便地使我们的程序变得强大起来。
想要给小工具添加一个设置页面?可以,只要在公共执行的JS里面加入一句

System.Gadget.settingsUI = "Settings.html";  

就可以了。
        当我们完成开发以后,就需要将小工具打包发布。标准的小工具安装包是以Gadget为扩展名的ZIP或者CAB压缩包。因此,我们只需要把开发文件夹里面的所有文件打包压缩即可。我们可以使用WinRAR制作ZIP压缩包,然后将扩展名修改为Gadget即可,这样,小工具的打包就完成了。

posted @ 2016-06-10 16:38  ylong52  阅读(1267)  评论(0编辑  收藏  举报