本主题将介绍 Microsoft Windows RSS 平台,Microsoft Windows RSS 平台是开发人员可用于操作通用源列表的 API,也是用户订阅的一组“真正简单的联合发布系统”(RSS) 源。 本主题对属性和方法进行了分类,以便提供有关平台及其功能的技术概述。
(本文还包含指向英文网页的链接。)
Windows RSS 平台支持以下两种组件对象模型 (COM) 接口:
| • | 早期绑定 (vtable) 接口 — 比较适合 C/C++ 开发人员使用的接口。 这些对象位于 IXFeedsManager 层次结构中。 |
| • | 后期绑定 IDispatch 接口 — 非常适合于脚本编写和托管代码(Microsoft Visual Basic .NET 和 C#)的 COM 自动接口。 这些是 IFeedsManager 对象。 |
为避免不必要的重复,本主题中使用 COM 自动接口的名称。
| 简介 | |
| 通用源列表 | |
| 使用源 | |
| RSS 2.0 元素 | |
| 源同步 | |
| 相关主题 |
作为 Windows Internet Explorer 7 中 RSS 支持的一部分,用户可以在浏览器中发现并订阅 RSS 源。 用户订阅源时,此源将添加到通用源列表(客户端可用其来补充或替代自己的列表)。 例如,在 Microsoft Office Outlook® 2007 中,用户订阅列表可以从通用源列表导入源。 这样,就可以在 Internet Explorer 中发现源,随后发现的源出现在其他应用程序中。
源下载引擎下载源并且在源存储中将新项与现有数据合并。 使用 Windows RSS 平台,应用程序随后将源数据提供给用户。 例如,利用 Windows Vista 的 RSS Explorer,用户可拥有美妙的新闻和博客源文本阅读体验,而利用 Microsoft Windows 媒体播放器,用户可以侦听音频源。 使用的源数据因应用程序而异;通过提供对源数据的轻松访问,Windows RSS 平台呈现了各种可用方案。
Windows RSS 平台中的顶层对象为 FeedsManager 对象。 要创建用于编写脚本的对象,请使用 ProgID Microsoft.FeedsManager。 要创建与 C/C++ 一起使用的对象,请调用 CoCreateInstance 和 CLSID_FeedsManager(在 msfeeds.h 头文件中有所定义)。
Windows RSS 平台对象模型层次结构如下所示:
.gif)
通用源列表类似于具有文件夹和源的分层文件系统。 IFeedFolder 接口包含用于访问文件夹中的源的属性和方法,以及用于访问子文件夹的属性和方法。 由于源文件夹被映射到磁盘目录,因此文件夹名称仅限使用文件系统允许的字符。 (有关详细信息,请参阅 Valid Feed and Folder Names。)
通用源列表的根文件夹可以通过 FeedsManager.RootFolder 属性访问(它返回 IFeedFolder 类型的对象)。 其中,每个 IFeedFolder 对象包含其自身的子文件夹和源集合。 (请参考子文件夹中演示递归文件夹搜索(返回聚合的源总数)的示例。)
下表列出了用于遍历和操作通用源列表层次结构的方法和属性。
文件夹
| 文件夹 | ||
IFeedFolder | 返回顶层系统源文件夹。 | |
Boolean | 如果为顶层文件夹,则返回 true。 | |
返回子文件夹集合。 | ||
IFeedFolder | 按路径返回特定文件夹。 | |
IFeedFolder | 返回特定子文件夹。 | |
String | 返回文件夹名称。 | |
IFeedFolder | 返回父文件夹。 | |
String | 返回文件夹的源列表路径。 | |
Integer | 返回所有源中聚合的项目总数。 | |
Integer | 返回所有源中聚合的未读项目总数。 | |
文件夹存在与否 | . | . |
Boolean | 如果文件夹存在,则返回 true。 | |
Boolean | 如果子文件夹存在,则返回 true。 | |
创建、删除、移动、重命名文件夹 | . | . |
IFeedFolder | 创建和返回新的子文件夹。 | |
删除文件夹(包括其子文件夹和源)。 | ||
. | 删除文件夹(包括其子文件夹和源)。 | |
. | 移动文件夹。 | |
. | 重命名文件夹。 |
IFeed 接口提供了必需的和可选的 RSS 源元素。 要订阅源,需将其分配给文件夹。 下表列出了用于管理源的方法和属性。
| 源 | ||
IFeed | 按源列表路径返回特定的源。 | |
IFeed | 按 URL 返回特定的源(如果订阅)。 | |
IFeed | 按名称返回特定的源。 | |
IFeedsEnum | 返回源集合。 | |
String | 返回源名称。 | |
IFeedFolder | 返回源的父文件夹。 | |
String | 返回源的源列表路径。 | |
源存在与否 | . | . |
Boolean | 如果源存在,则返回 true。 | |
Boolean | 如果源存在,则返回 true。 | |
Boolean | 如果源订阅存在,则返回 true。 | |
创建、删除、移动、重命名源 | . | . |
IFeed | 在文件夹中创建源并且订阅它。 | |
. | 删除源。 | |
. | 删除源。 | |
. | 移动源。 | |
. | 重命名源。 |
RSS 2.0 源的多数 XML 元素可在关联对象上以只读属性获得。 尽管某些通道元素(例如,云、分级、skipDays 和 skipHours)在 IFeed 接口未作为属性来提供,但它们仍然存在于源的 XML 源中。 其他命名空间扩展定义 Windows RSS 平台用于管理列表的属性。 (请参阅 Simple List Extensions。)
IFeed
IFeed 接口提供了在 RSS 通道元素中呈现的属性。
| 源元素 | ||
String | 可选。 返回通道版权。 | |
String | 必需。 返回通道说明。 | |
String | 可选。 返回源徽标的 URL。 | |
String | 可选。 返回源的语言代码。 | |
Floating-point number | 可选。 返回上次更改内容的日期。 | |
String | 必需。 返回源的主页 URL。 | |
Floating-point number | 可选。 返回源内容的发布日期。 | |
String | 必需。 返回源标题。 | |
String | 可选。 返回源的生存时间 (TTL)。 | |
XML 源 | . | . |
String | 返回用于源的新的 XML 文档。 | |
通用源列表属性 | . | . |
String | 返回用于安全区域映射的 URL。 | |
Boolean | 返回是否将源视为列表的信息。 | |
Integer | 返回项数。 | |
IFeedsEnum | 返回项集合。 | |
String | 返回创建或上次修改的日期和时间。 | |
String | 返回保存已下载附件的系统文件夹。 | |
String | 返回分配给源的 GUID。 | |
String | 将所有项的读取状态都设置为 true。 | |
String | 返回源名称。 | |
Feed.Parent | IFeedFolder | 返回源的父文件夹。 |
String | 返回源的源列表路径。 | |
Integer | 返回未读项数。 | |
String | 返回源的源 URL。 |
IFeedItem
源中各项由 FeedItem 对象表示。 根据源类型,这些项作为新项(合并到源中)或列表项(替换先前列表内容)而聚合。 其他 RSS 2.0 项元素(例如 GUID 和源)可在源的 XML 源文档中获得。
| 顶元素 | ||
String | 可选。 返回作者的电子邮件地址。 | |
String | 可选。 返回相关注释的页面 URL。 | |
String | 必需。 返回项概要。 | |
String | 可选。 返回项的 GUID。 | |
String | 必需。 返回项的源 URL。 | |
FeedItem.Modified | Floating-point number | 可选。 返回上次修改的日期和时间。 |
Floating-point number | 可选。 表示项的发布日期。 | |
String | 必需。 返回项标题。 | |
XML 源 | . | . |
String | 返回项的 XML 段。 | |
通用源列表属性 | . | . |
String | 返回用于安全区域映射的 URL。 | |
返回与项关联的附件(媒体对象)。 | ||
Boolean | 如果项已被查看,则返回 true。 | |
Integer | 返回源下载引擎分配的 ID。 | |
IFeed | 返回父源。 |
IFeedEnclosure
IFeedEnclosure 接口提供对可选媒体文件附件(可能与每个源项关联)的访问。
| 附件属性 | ||
Integer | 必需。 返回附件长度(以字节为单位)。 | |
String | 必需。 返回 MIME 类型。 | |
String | 必需。 返回文件的源 URL。 | |
通用源列表属性 | . | . |
String | 返回最终的 MIME 类型。 | |
String | 返回用于安全区域映射的 URL。 | |
String | 返回已下载文件的本地系统路径。 | |
返回父源项。 |
Internet Explorer 7 聚合器(源下载引擎)自动从源中指定的源 URL 下载源项。 可以预定下载或按用户要求下载。 源的间隔属性值和 Ttl 元素值确定源的下载频率;当前时间等于 LastDownloadTime 加上这两个值中的最大值时,更新源。
下表列出了控制源的下载和同步行为的方法和属性:
| • | |
| • | |
| • |
© 2007 Microsoft Corporation 版权所有。保留所有权利。使用规定。