Freigeben über


Microsoft Feed API documentation

As I discussed earlier, the Windows RSS platform (common feed list, synchronization engine and feed store) exposes all of its functionality to any application. These APIs are known as the Microsoft Feed APIs, and the documentation is now live on MSDN! Check it out and give us feedback.

Next week, we'll post info on a neat little sample app that works against the Beta 2 Preview. Look for it!

- Walter

[11/28/06 Updated MSDN documentation link]

Comments

  • Anonymous
    February 04, 2006
    Any managed wrappers in the work?
  • Anonymous
    February 04, 2006
    Ditto!
  • Anonymous
    February 04, 2006
    I've had a bit of a play with the API in C# (just add a reference to msfeeds.dll in your project, CLaueR).It cries out for some more async methods. I don't know how easy this is to implement in your COM interfaces, but IFeed needs a "DownloadAsync" method. It could either accept a callback as a parameter to that method, or also provide a "DownloadCompleted" event.Also a "Download" method on IFeedFolder would be great - to get all feeds within that folder.
  • Anonymous
    February 05, 2006
    It seems strange that MS is making non-.NET API's still.  Who uses C++ still?

    Of course I'm kidding, but seriously will there be a managed API for RSS?
  • Anonymous
    February 05, 2006
    Of course a managed API for RSS is coming.. Maybe with WinFX.
  • Anonymous
    February 05, 2006
    I have been waiting for this since the platfrom was announced. Now if only i could skip out of classes and work to work with it.
  • Anonymous
    February 06, 2006
    Do the "FeedFolderWatcher" and "FeedWatcher" interfaces work in the managed API? I've been trying something like this in C#:

    FeedWatcher fw = (FeedWatcher)feed.GetWatcher(...);

    But it throws an "InvalidCastException".

    How do I use the watcher interfaces in C#? Or can't I?

    Cheers,
    Matt
  • Anonymous
    February 06, 2006
    I'm confused over the need for having two separate sets of interfaces (IFeed, which is based on IDispatch, vs. IXFeed which I assume is derived directly from IUnknown (though the reference doesn't say)).  There should be no reason for the X interfaces -- C++ code can early-bind to interfaces derived from IDispatch just as well as those from IUnknown.

    I haven't seen any other APIs from Microsoft that use this pattern.  For example, in MSHTML, most of the interfaces are derived from IDispatch, thus compatible with scripts, and are also early-bind-able from C++.  Same thing with the MSXML APIs.  In fact, one of Automation's largest strengths is that as long as your interface is derived from IDispatch, you can use the same interface for both early and late binding.  I don't see why the feeds API should need two sets of interfaces.

    P.S. I love that there's an example in the documentation that references a certain "Raymond's Win32 blog" :-)
  • Anonymous
    February 06, 2006
    It's 2006 and we're still using COM for new APIs?!! Ergh...
  • Anonymous
    February 07, 2006
    Yes Andrew, they are using COM.  For one thing, IE does not have the .NET Framework as a system requirement.

    IMHO, it's better for managed apps to have to use a COM API than for unmanaged apps to have to use a .NET API.  Otherwise it would be a huge performance hit for unmanaged apps, to have to pull in the framework just to use this simple RSS API.

    Though WinFX is an important part of Vista, there is still a significant amount of new features that are implemented as Win32- or COM-style APIs.  I read that there are over 4000 such new APIs in Vista.  I would expect that in the next Windows release after Vista we'll see the vast majority of new APIs being managed.
  • Anonymous
    February 07, 2006
    I'm playing around with the Feed API, and I keep striking an error when accessing IFeedItem.PubDate.

    For some feeds, even trying to read a value from this property is raising an ArgumentException, which tells me that the date is not a valid OleAut date.

    Right now I've wrapped any access to this property in a try/catch block, but this seems less than ideal. What's the go with this?

    ps. This is in Visual C# 2005 Express.
  • Anonymous
    February 08, 2006
    problems enumerating the feed items of an feed.

    I use the Feed API via InterOp in an .NET project.

    I have no problem to enumerate each feed in a feeds collection.

    But when I try to enumerate the Items of a feed, there is no enumeration support?

    when I use the following code:

    ...

    foreach (IFeed feed in feeds) // OK, feeds is of type IFeedsEnum and enumerable
    {
      foreach (IFeedItem item in feed.Items) // doesn't compile, because feed.Items is from base type object and not enumerable.
         {
         }
    }
  • Anonymous
    February 14, 2006
    The comment has been removed
  • Anonymous
    February 14, 2006
    The comment has been removed
  • Anonymous
    February 14, 2006
    The new Windows Mail client is using a simple directory structure to store email, instead of opaque binary files.
    Do you wonder if developers will be more open to using the common feeds platform if they can actually open the XML straight from the file system?

    (For those who care the binary files are located at "c:documents and settings<user>Local SettingsApplication DataMicrosoftFeeds")

    Of course I'd much rather use a nice API when writing an application, but in some cases simplicity is best...

    In addition, are you working on a MSN Desktop Search IFilter so that people can search their feeds along with the rest of their files?
  • Anonymous
    February 21, 2006
    Been waiting for this one, since I got it I can't stop playing with it. Nice job, I posted a really simple sample on my blog, it is work in progress but it all about sharing feed lists. One drawback is that there is no managed wrapper but I suppose this is just a matter of time.
  • Anonymous
    March 18, 2006
    The comment has been removed
  • Anonymous
    April 02, 2006
    What is the solution given in .NET 2.0 for OLE?

    Actually, I need to provide a text editor for a web application and store it as MS Word document.
    So, I am searching for a OLE kind of tool which help in embedding the MS Word object in the browser.

    Thanks in advance.
  • Anonymous
    May 31, 2006
    The comment has been removed