Last time I visited this topic I was miffed that the platform SDK that I had access to at the time did not include the RSS API's. They now exist and are called Web Feeds API. The problem is that they are in native COM only. There isn't a managed version of them. So I get to use interop by calling the Type Library Importer on the msfeeds.dll. Didn't they learn their lesson from DirectX that forcing developers to use a shim to the native code is a bad idea? At least I know where it is now. Perhaps I should take this opportunity to dust off my C++ skills. Why though? All the other apps I have written that I'm hoping to make use of RSS are in Managed Code.
Category - RSS
The RSS platform in Vista has three parts:
- Common Feed List
- Common Data Store
- Platform Sync Engine
The data itself is structured like a directory structure. At the top is Feeds (a collection of feeds). Within Feeds there are a list of one or more folders. Each folder can contain zero or more folders and zero or more Feed. Each folder also has a folder properties.... er... properties. Each Feed has one or more Item and Feed Properties. Each item has zero or more enclosures and item properties. Each enclosure has enclosure properties.
Looks like when a sync is performed the system will create a folder structure containing any enclosures held within the feed. That means that audio-feeds (podcasts) and video-feeds will be automatically downloaded and placed into a virtual folder. This is a very good thing for managing synchronization of these items to various devices.
The sync engine will perform most of the really boring aspects of getting RSS feeds. Namely inserting new items, updating existing items, and ignoring the hell out of old crap. Can you tell how much I enjoy doing that part of it today?
Everything up to this point sounds great, and it reads great on this page. Now this is where I get lost. I'm excited about it. This weekend (Labor Day weekend here in the US) I've decided that I will only run Windows Vista on my main machine. I will immerse myself in trying out all the cool things in Vista. Specifically I am looking at trying out the Auxiliary Display Platform, the MMC 3.0, and of course RSS. I installed the PSDK, and I have my trusty Beta 2 of VS 2005 all hot and ready for action. This is where the problem occurs. What is the name space for all of this cool RSS functionality? Where are they hiding it? It isn't listed in the PSDK, and I can't find any code samples anywhere on the web. Did they take it out at the last minute?