如何开始使用 Windows 7 小工具
Posted
技术标签:
【中文标题】如何开始使用 Windows 7 小工具【英文标题】:How to get started with Windows 7 gadgets 【发布时间】:2010-10-28 12:26:20 【问题描述】:我从未为 Vista 或 7 编写过小工具,但我想尝试制作一个。但是我从哪里开始呢?我试图在 google 和 msdn 上搜索,但我没有找到任何有用的东西。要么是非常非常古老的东西(Vista beta 的东西),要么已经制作了小工具,要么是 Vista 和 7 中的小工具之间的差异。但这对我没有帮助,因为我一开始不知道如何制作小工具......我什至没有设法找出它们是用什么写的......
那么,任何人都可以帮助我开始吗?
我从哪里开始? 我需要知道什么? 它们是用什么写的? 它们是如何“打包”的?换句话说,我如何从使用 Visual Studio 的全新 Windows 7 安装到可以安装并放在我的 Windows 7 桌面上的工作小工具。
【问题讨论】:
我没有注意到指向 Windows Sidebar Object Reference 的链接记录了 Gadget 对象的 API 以及其他一些内容。 【参考方案1】:我已经开始为每个人写一篇关于这个主题的教程,请参阅making gadgets for Windows 7。
【讨论】:
【参考方案2】:将所有当前答案合并整理成一个答案,然后添加我自己的研究:
Microsoft gadget发展简述:
它们是用什么编写的? Windows Vista/Seven 小工具是用 XML、html、CSS 和一些 IE 脚本语言混合开发的。也可以将 C# 与最新版本的 Script# 一起使用。
它们是如何打包/部署的?实际的小工具存储在 *.gadget 文件中,这些文件只是上面列出的文本源文件,压缩成单个 zip 文件。
小工具开发的有用参考:
我从哪里开始? 很好的 Windows Vista/Seven 小工具开发介绍性参考资料:
Developing Gadgets for the Windows Sidebar Vista GadgetsI-Programmer 的入门教程 Authoring Sidebar Gadgets in C# Developing a Gadget for Windows Sidebar Part 1: The BasicsMSDN官方教程。如果你愿意使用离线资源,这本书似乎是一个很好的资源:
Creating Vista Gadgets: Using HTML, CSS and javascript with Examples in RSS, Ajax, ActiveX (COM) and Silverlight 书籍相关博客:http://www.innovatewithgadgets.com/我需要知道什么? 其他一些有用的参考资料;不一定是指导性的
Windows Sidebar(MSDN 官方文档) 相关堆栈溢出问题:C# tutorial to write gadgets更新:嗯,这已被证明是一个受欢迎的答案~分享我自己最近在 Windows 7 小工具开发方面的经验:
也许开始开发 Windows 7 小工具的最简单方法是修改已经开发的小工具。我最近自己做了这个,因为我想要一个更大的时钟小工具。找不到任何东西,我修补了一个标准 Windows 时钟小工具的副本,直到它变大了两倍。我建议从时钟小工具开始,因为它相当小而且写得很好。这是我使用的过程:
-
找到您要修改的小工具。它们分布在几个不同的地方。搜索名为 *.gadget 的文件夹。示例:
C:\Program Files\Windows Sidebar\Gadgets\Clock.Gadget\
复制此文件夹(已安装的小工具未打包在 zip 文件中。)
重命名一些关键部分:
-
文件夹名称
gadget.xml 文件中的名称。它看起来像:
<name>Clock</name>
这是将显示在“小工具库”窗口中的名称。
%LOCALAPPDATA%\Microsoft\Windows Sidebar\
)
修改此目录中的文件。该小工具与网页非常相似:HTML、CSS、JS 和图像文件。 gadget.xml 文件指定哪个文件作为小工具的“索引”页面打开。
保存更改后,通过安装小工具的新实例来查看结果。你也可以debug the JavaScript(这篇文章的其余部分也很丰富)。
【讨论】:
我建议使用 JavaScript 而不是“一些脚本语言”。如果您最小化或分支使用特殊的 MS 小工具(如选项和最小/最大/“停靠”按钮),我们发现将代码转换为 Chrome 扩展非常容易。对于条件 cmets,它是 IE7,而不是 Vista 和 Win 7 的 IE8。 如果您有一些见解,不知道如何将 SlideShow 小工具更改为超过两个尺寸(或者只是让它像任何窗口一样可调整大小),那就太好了。【参考方案3】:这是 Scott Allen 的一篇优秀文章:Developing Gadgets for the Windows Sidebar
此站点 Windows 7/Vista Sidebar Gadgets 包含许多小工具资源的链接。
【讨论】:
【参考方案4】:这是 Vista Gadgets 上的 MSDN 文章。关于7 gadgets, and changes 的一些初步文档。我认为唯一的主要变化是小工具不再驻留在侧边栏中,因此“停靠/取消停靠事件”现在是向后兼容的组件,确实不应该使用。
开始的最佳方式可能是调整现有的小工具。上面的链接中有一个示例小工具,或者您可以自行选择其他小工具。
小工具是用 HTML、CSS 和一些 IE 脚本语言(通常是 Javascript,但我相信 VBScript 也可以)编写的。对于真正花哨的东西,您可能需要创建一个 ActiveX 对象,因此了解 COM 的 C#/C++ 可能很有用。
小工具被打包为“.gadget”文件,这些文件只是重命名的 Zip 档案,在其顶层包含一个小工具清单 (gadget.xml)。
【讨论】:
以上是关于如何开始使用 Windows 7 小工具的主要内容,如果未能解决你的问题,请参考以下文章