A .Net outlook on extending Outlook


I recently got curious about how easy it is to extend Outlook using .Net.  I currently use one Outlook Add-in, NewsGator, as my blog (RSS feed) aggregator. 

Briefly, I’ve found two ways you can use .Net to leverage Outlook data: either (1) by talking to Outlook from a standalone .Net Assembly using the Outlook Primary Interoperability Assembly (PIA); or, (2) by creating an Add-In that extends the behavior of Outlook itself (like NewsGator does).  

The process is fairly discoverable, but you’ll want a guide to help you get started.  This document provides an excellent introduction to both of the approaches mentioned above.  The author uses walkthroughs, highlights gotchas, indicates best practices, and includes links.  The sample code worked perfectly with VS2003, but if you’re using the Visual Studio 2005 beta, there is one small tweak required that is resolved by using an explicit cast, as described in this dotnetjunkies post.

(Aside: A third Outlook customization technique involves creating custom Forms within Outlook for viewing Contacts, Appointments, etc., but that’s a little quirkier, and, as far as I can tell, it’s strictly VBScript-based at this point and not .Net-enabled.)

Comments (9)

  1. Robert,

    I have some posts about Outlook dev with C# on my blog. I have some ideas about developing some add-ins for Outlook; please contact me if you’re interested 🙂

  2. Robert Burke says:

    Peter, thanks for the link! You have some useful articles there!

    I don’t have a whole lot of time for developing add-ins right now, although I have a specific one in mind that prompted this investigation, and I’ll certainly blog it if I end up finishing it.

  3. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  4. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  5. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  6. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  7. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  8. I’ve been delayed in finishing my wrap-up to last week’s TechEd Europe, and in the interim, Marcus has…

  9. I’ve been distracted from my attempts to finish my wrap-up to last week’s TechEd Europe, and in the interim,…