Outlook 2007 MAPI Reference Overview
This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
This topic provides overview information about the Outlook 2007 MAPI Reference documentation.
This documentation applies to the implementation of the Messaging API (MAPI) in Microsoft Office Outlook 2007. The Outlook implementation of MAPI differs from the Microsoft Exchange implementation. The Outlook implementation is optimized for running on client computers and emphasizes low latency. The Exchange implementation is intended for servers where high availability and better multithreading are important.
Because Exchange has deemphasized the use of MAPI since Microsoft Exchange Server 2007, support for the Exchange implementation is limited.
Use this documentation for applications running on end-user systems. For server applications, use the Exchange implementation of MAPI, if appropriate, or use current Exchange APIs, such as the Exchange Web Services Reference.
It may be possible to write applications that work with either the Outlook or Exchange implementations of MAPI. For example, MFCMAPI works well on either platform. The implementations have many common features, but there are differences both obvious and subtle. You will have to test carefully on both platforms if you intend for your application to work in all environments. This testing will require two systems, because running both implementations on the same operating system installation is not supported.
Be aware that MAPI is appropriate for low-level access to data in a MAPI store or for building a transport, message store, or address book provider. Because MAPI bypasses Outlook’s business logic, you should also consider the use of the Outlook object model when you evaluate APIs for building your solution. The Outlook object model does encapsulate Outlook business logic, but is not suitable for multithreaded code, sync providers, or Windows Service applications.
There are three types of information in this documentation: