|
  
- 主题
- 405
- 精华
- 18
- 积分
- 27330
- 荔枝
- 2122 颗
- 龙眼
- 120 个
- 香蕉
- 185 条
- 性别
- 男
- 来自
- 根子·茅坡
- 在线时间
- 1502 小时
        
|
Sidebar Gadget最新开发教程:理解两个概念
翻译了两篇Sidebar Gadget的文章后,决定自己写一个教程,与准备投身于Sidebar Gadget开发的劳苦大众们分享一下经验。也当作自己个人学习Gadget开发的一些总结,使自己可以学习得深入一些。
2 K' w2 Z: l! h! c& I0 _( x9 l- Y7 k9 ]- \
5 ?1 k& G: K) x J2 v
- R0 ^1 L* u2 \
欢迎大家就这一系列文章提出批评斧正。本部分准备介绍一些基础知识。
, e$ S. T+ d1 k- j2 ]% I; V" H* `; X' |- g5 a
关于SideBar
9 z* u0 m5 m6 ?' T9 y# W5 m9 ^' e' ?! l. }9 p
SideBar是Windows Vista特有的一个显示子系统(曾经宣布为Windows XP以及Windows Server 2003也开发Sidebar,但该项目现已取消),在中文系统中称之为% H( u( \7 K& z9 j2 j5 s
# i0 _2 w P& i5 _" s
“边栏”。其执行程序,我们可以在以下目录中找到[SystemInstalledDriver:]\program files\Windows Sidebar,此文件夹 结构大体如右图所示,各文件夹以及文件的具体作用如下:
' }7 I1 P, E* Z1 p
$ E1 k f8 p- D5 l6 l1 L. H Sidebar.exe:此文件即Sidebar.exe的主执行文件,如果你在Windows Vista当中未打开边栏,可以直接执行该文件即打开。
) {! K/ u0 V0 t/ \, T* u5 h, h/ {! K2 J1 e6 }$ ^# u
Sbdrop.dll:Sidebar拖抻支持文件;
8 L/ A: G( ^5 W) K
4 J0 J i7 i* t3 w2 C. T settings.ini: Sidebar设置文件,可以设置默认启动Gadget等特性。8 W) s) p/ w% R! F+ P1 n! D. d! i
( v+ \5 L6 P" h' |% u
wlstrvc.dll: Weather Gadget(即显示天气的小工具)所依赖的ActiveXControl,显示RSS信息的Gadget所依赖的ActiveX控件是置身在System32目录下msfeeds.dll文件;+ _" G3 K% A2 K% k- a/ d" P; \( q
7 a3 U. k6 h8 d% r3 W5 Z en-us: 英文相关的资源文件;- ?+ ~. f& y U5 B2 [* B
0 H6 W2 N9 d' @6 @6 z zh-CN:简体中文相关的资源文件;% G" }1 g: P1 X" e1 M8 K
9 b& {3 x) w9 g2 j# e* z4 I Gadgets文件夹:该文件夹中包括多个子文件夹,每个子文件夹均是Windows Vista默认自带的Gadgets解压后的形式。
& t1 q3 d/ _: s& Y1 } b5 G0 L8 l* R+ X, R2 k X. {
Shared Gadget:存储在此文件夹中的Gadget可以供同一机器上的多用户共同使用。
+ o4 @+ c& T( E2 s1 H4 k
5 ^0 b2 ?! D8 t; G# t8 K 而用户自行安装的Gadget可以在[SystemInstalledDriver:]\users\[user name]\appdata\local\microsoft\windows sidebar\gadgets\中查找到。
. K/ E/ K+ G2 l# _4 `. s8 y5 W" q
* o/ X9 g) ]$ [0 B9 r 关于Gadget
2 {1 C, r/ |9 }
& X. ]* V8 t) l, {" z r1 x 在中文系统中,Gadget被翻译为“小工具”,微软的Gadget基本上分为三种,即Live Gadget、Sidebar Gadget以及Slideshow Gadget:) _( W7 |8 H& e! m
8 p1 X, a9 O* x1 h1 ? Live Gadget:如果大家访问http://www.live.com,会发现其页面可以进行自定义,而自定义的小型页面模块,我们称之为Live Gadget;9 A* W, x" e. n, a3 G7 H8 n1 U; u
- N5 A2 B2 U" w0 K5 T- d$ a z
Slideshow Gadget:Windows Vista支持未来的笔记本电脑除了主显示屏外,还可以有一个外置的小型显示屏,类似于双屏手机中外置显示屏,在不开电脑电源的情况下,从这个扩展显示屏上获取自己想要的信息,而实现这个功能的模块称之为Slideshow Gadget;8 n1 e5 ^* E3 R1 d$ n3 J% m4 C
/ R0 @9 z% m' B5 y$ d Sidebar Gadget:本教程中所指的Gadget是此种,依赖于Windows Sidebar所执行的Gadget。6 K3 } E# \! `+ I6 z# T3 e
9 B2 K. A$ A/ K' o& N2 @
另外,这三种Gadget目前的开发环境、执行环境以及开发方式均不统一,不能统用。至于未来规划,开心也不是非常清楚。有知道的可以在此透露一下。; H3 j5 a0 ?4 b) ^! L) f
# _- w& e. G0 v- m 其实Gadget本身非常简单,如果感兴趣,可以访问http://go.microsoft.com/fwlink/?LinkId=55696,并且随意下载一个SideBar Gadget。把其另存在桌面上,比如那个计算器Gadget(Calculator)。其后缀名为.gadget。我们现在把后缀名改为.zip,在Windows XP系统上可以双击打开,就会看到其目录结构。
+ }1 `# B% K& ?! W0 t
0 o( T( W& w' U8 r5 m; i: c 也就是说,Gadget本身是包含一堆HTML、JavaScript、CSS以及图片文件一个压缩包,其压缩格式可以采用ZIP格式,也可以采用CAB格式。采用CAB格式,可以进行数字签名,参阅我上一篇译文。在这个Gadget中使用Gadget.xml这个文件来描述此Gadget的通用信息,如名称、作者、版本、是否有设置文件、图标等等。此文件可以放置在根目录中,也可以放置在不同语言文件夹中,如en-us或者zh-cn当中。9 M A1 z/ g! W3 D. B, k# l1 o' l
D' z- O# ~( P5 }+ s- A9 o# a9 @ 系统自带的Gadget大部分都使用了一些特别开发的ActiveX控件。我们自己开发的Gadget如果是想使用Microsoft Gadget Gallery(即http://go.microsoft.com/fwlink/?LinkId=55696)方式或者后缀名为.gadget方式分发,那么只能调用系统中已有的ActiveX控件,而不能创建自己的ActiveX控件。如果你想自己制作可执行的安装文件包,那么你就可以为所欲为了(流氓软件???呵呵)。
( R/ e" c* r2 \9 w: q, l! z3 V) t
Javascript可以调用的ActiveX控件也非常多,比如使用Scripting.FileSystemObject访问文件系统,使用Microsoft.XmlDom分析XML文件,使用Microsoft.XMLHTTP调用Web Service等。所以Gadget可以做很多事情。
0 r/ l9 U; X5 X/ @
) B# D; \: i. V5 d5 T. {; T 那么可以做什么事情呢?这就得依赖于我们的头脑不断闪现的灵感火花了。
: Z1 F a* Y- B* Y: S, ?; ~5 v2 `" g: M, g. _7 E% K- L
( K) j; W; X- t: r
5 R0 b: y% ~; Y$ J: v& X$ X3 o& A; H0 S# x, v/ [8 @* N8 T- m
原文:http://blog.joycode.com/joy/archive/2006/10/24/85611.aspx |
|