Home > Samples > Update > June 2006
          Back to associated article: Custom Code Moves to Office 2007
Outlook 2007 Consolidates APIs

[bio]

The following is a sidebar accompanying an article published by Directions on Microsoft, an independent research firm focused exclusively on Microsoft strategy & technology. More samples of our content, as well as a list of upcoming articles and reports are also available.

The Outlook 2007 object model will deliver capabilities that previously required developers to use other APIs, simplifying programming and deployment for developers, and maintenance for Microsoft.

Previous versions of the Outlook object model were missing some basic capabilities, such as the ability to retrieve an Exchange user's Internet e-mail (Simple Mail Transfer Protocol, or SMTP) address, and the ability to detect and respond to changes to mail items in the Outlook store. To accomplish these tasks, developers had to resort to a variety of APIs, including Collaboration Data Objects (CDO), the Exchange Client Extensions (ECE), and the Messaging API (MAPI). Developers also had to resort to scripting languages (such as JScript) to add code to Outlook forms.

Using multiple APIs and languages complicated programming. It also meant that developers had to ensure that the correct version of every API was present on every target machine for their applications, a particular problem for CDO. All of these problems affect not only developers who use the APIs directly but also developers working in C# and recent versions of Visual Basic, who access the APIs indirectly through Primary Interoperability Assemblies (PIAs).

Outlook 2007's object model adds many new functions that formerly required CDO and ECE, enabling developers to dispense with these APIs for new code, although both APIs continue to be supported. MAPI remains fundamental to Outlook and Exchange, but developers should be able to avoid that API for most tasks. Outlook 2007 forms can also be processed through the object model, eliminating the need for script. As before, the new Outlook 2007 object model will support C# and current Visual Basic versions through PIAs, and the next Visual Studio Tools for Office (code-named VSTOv3) will deliver add-in templates for development on the PIAs.