用U盘在多台Vista系统间共用Gadgets
2007-03-01 14:18:35 来源:WEB开发网要让Gadgets能够在多台Windows Vista系统中运行,必须将这些与用户有关的路径修改为通用路径。Windows Vista提供了一个环境变量来实现这一点:GADGETS_USER,它可以告诉Sidebar去哪些寻找用户安装的Gadgets。也即是说,我们需要将setting.ini中与用户目录有关的参量如上面例子中的 “C:%5CUsers %5Chighdiy %5CAppData %5CLocal %5CMicrosoft %5CWindows %20Sidebar %5CGadgets%5C” 替换为 “%GADGET_USER%”,以计算器小配件的例子来说,修改后即为:
PrivateSetting_GadgetName=“%GADGETS_USER% calculator%5B1%5D.gadget”
同样地,对于系统默认安装的Gadget(从“%programfiles% windows sidebar shared gadgets”中拷贝来的),则需将字符串 “C:%5CProgram%20Files” 修改为 “%PROGRAMFILES%”,这可避免因将Windows Vista安装不同分区而可能导致Sidebar加载时无法正确找到Gadgets文件的情况。
而对于那些虽然可以让多个用户使用但却是由系统管理员安装的Gadgets,因其他计算机上未必存在,则只能通过U盘来加载了,即与用户自安装的Gadgets采用类似的方法,将字符串 “C:%5C Program%20 Files %5CWindows %20Sidebar %5CShared %20Gadgets” 修改为 “%GADGETS_USER%” 。
创建Sidebar加载脚本
完成上面的修改后,便进入了最后一步,在这里我们需要设置环境变量,为Sidebar加载提供相关信息。其中,GADGETS_SETTINGS告知sidebar 配置文件“settings.ini”的位置,而 GADGETS_USER 则告知sidebar去哪些寻找待加载的Gadgets。
在 e:sblocal目录下,创建一个名为sb.cmd的批处理文件,其内容如下:
pushd %~dp0
set GADGETS_SETTINGS=%~dp0
set GADGETS_USER=%~dp0gadgets
start sidebar
popd
大功告成。
这样,在任何一台Windows Vista系统中插入U盘,在登录时关闭系统默认的Sidebar,然后运行“sblocalsb.cmd” 脚本即可让我们的“随身”Gadgets运行了。
客观地说,通过这样的方式,可以大大方便Gadgets在Windows Vista中的使用,但从安全性的角度而言,这是不是个好的选择则存在疑问:假如不法用户通过U盘携带恶意Gadgets呢?这可以使其方便地加载任何其想要使用的Gadgets,难道Gadgets真的要成为未来流氓软件的主战场?
更多精彩
赞助商链接