MAPI - Messaging Application Programming Interface
2011-08-05 11:09
316 查看
(From Wikipedia)
In simple: MAPI is a COM-based API for MS windows for message transferring. It is implemented by using RPC.
Messaging Application Programming Interface (MAPI) is a messaging architecture and a
Component Object Model based
API for Microsoft Windows. MAPI allows client programmes to become (e-mail) messaging-enabled, -aware, or -based by
calling MAPI subsystem routines that interface with certain messaging servers. While MAPI is designed to be independent of the protocol, it is usually used with
MAPI/RPC, the
proprietary protocol that
Microsoft Outlook uses to communicate with
Microsoft Exchange.
Simple MAPI is a subset of 12 functions which enable developers to add basic messaging functionality. Extended MAPI allows complete control over the messaging system on the client computer, creation and management of messages, management of the client mailbox,
service providers, and so forth. Simple MAPI ships with
Microsoft Windows as part of
Outlook Express/Windows Mail while the full Extended MAPI ships with
Office Outlook and
Exchange.
In addition to the Extended MAPI client interface, programming calls can be made indirectly through the
Simple MAPI API client interface, through the Common Messaging Calls (CMC) API client interface, or by the object-based
CDO Library interface. These three methods are easier to use and designed for less complex messaging-enabled and -aware applications. (Simple MAPI and CMC were removed
from Exchange 2003.)
MAPI was originally designed by Microsoft. The company founded its MS Mail team in 1987, but it was not until it acquired
Consumers Software in 1991 to obtain
Network Courier that it had a messaging product. Reworked, it was sold as MS PC Mail (or
Microsoft Mail for PC Networking). The basic API to MS PC Mail was known as MAPI version 0 (or
MAPI0). MAPI uses functions loosely based on the
X.400
XAPIA standard.
MAPI includes facilities to access
message transports,
message stores, anddirectories.
Service provider interface
The full Extended MAPI interface is required for interfacing messaging-based services to client applications such as Outlook. For example, several non-Microsoft e-mail server product vendors created "MAPI service providers" to allow their products to be
accessed via Outlook. Notable examples include
Axigen Mail Server, Kerio Connect,
Scalix,
Zimbra, HP OpenMail,
IBM Lotus Notes,
Zarafa, and Bynari.
MAPI also had a service provider interface of sorts. Microsoft used this to interface MS Mail to an email system based on
Xenix, for internal use.
Extended MAPI is the main e-mail data access method used by Outlook, to interface to
Microsoft Exchange, via MAPI service providers shipped with Outlook
MAPI/RPC protocol details
Microsoft has released full details of the MAPI/RPC protocol.[1]
"MAPI protocol" is a colloquial name for the MAPI/RPC. At times, Microsoft has also called it "Exchange RPC" and "Outlook-Exchange Transport Protocol".
Open Source MAPI implementations
Up until recently Open Source implementations of MAPI have been scarce. But there are at least three open source projects working on implementing the MAPI protocol in
free open source software (FOSS) libraries for use in other open source applications. This list includes the
OpenMapi project,[2] the
Zarafa's MAPI4Linux (also part of
OpenMapi) and the
libmapi[3] subproject of the
OpenChange[4] project which is utilized in another OpenChange subproject called
Evolution-MAPI.[5] Evolution-MAPI is a connector provider that can be installed within the popular open source
Evolution groupware client.
External links
Messaging API at MSDN Library
OpenChange project - details of MAPI protocol and tools for exploring MAPI protocol
OpenMapi project - Open Source, multi-language MAPI implementation which can connect to other groupware sources, with API documentation
Messaging API Archived User Forum
In simple: MAPI is a COM-based API for MS windows for message transferring. It is implemented by using RPC.
Messaging Application Programming Interface (MAPI) is a messaging architecture and a
Component Object Model based
API for Microsoft Windows. MAPI allows client programmes to become (e-mail) messaging-enabled, -aware, or -based by
calling MAPI subsystem routines that interface with certain messaging servers. While MAPI is designed to be independent of the protocol, it is usually used with
MAPI/RPC, the
proprietary protocol that
Microsoft Outlook uses to communicate with
Microsoft Exchange.
Simple MAPI is a subset of 12 functions which enable developers to add basic messaging functionality. Extended MAPI allows complete control over the messaging system on the client computer, creation and management of messages, management of the client mailbox,
service providers, and so forth. Simple MAPI ships with
Microsoft Windows as part of
Outlook Express/Windows Mail while the full Extended MAPI ships with
Office Outlook and
Exchange.
In addition to the Extended MAPI client interface, programming calls can be made indirectly through the
Simple MAPI API client interface, through the Common Messaging Calls (CMC) API client interface, or by the object-based
CDO Library interface. These three methods are easier to use and designed for less complex messaging-enabled and -aware applications. (Simple MAPI and CMC were removed
from Exchange 2003.)
MAPI was originally designed by Microsoft. The company founded its MS Mail team in 1987, but it was not until it acquired
Consumers Software in 1991 to obtain
Network Courier that it had a messaging product. Reworked, it was sold as MS PC Mail (or
Microsoft Mail for PC Networking). The basic API to MS PC Mail was known as MAPI version 0 (or
MAPI0). MAPI uses functions loosely based on the
X.400
XAPIA standard.
MAPI includes facilities to access
message transports,
message stores, anddirectories.
Service provider interface
The full Extended MAPI interface is required for interfacing messaging-based services to client applications such as Outlook. For example, several non-Microsoft e-mail server product vendors created "MAPI service providers" to allow their products to be
accessed via Outlook. Notable examples include
Axigen Mail Server, Kerio Connect,
Scalix,
Zimbra, HP OpenMail,
IBM Lotus Notes,
Zarafa, and Bynari.
MAPI also had a service provider interface of sorts. Microsoft used this to interface MS Mail to an email system based on
Xenix, for internal use.
Extended MAPI is the main e-mail data access method used by Outlook, to interface to
Microsoft Exchange, via MAPI service providers shipped with Outlook
MAPI/RPC protocol details
Microsoft has released full details of the MAPI/RPC protocol.[1]
"MAPI protocol" is a colloquial name for the MAPI/RPC. At times, Microsoft has also called it "Exchange RPC" and "Outlook-Exchange Transport Protocol".
Open Source MAPI implementations
Up until recently Open Source implementations of MAPI have been scarce. But there are at least three open source projects working on implementing the MAPI protocol in
free open source software (FOSS) libraries for use in other open source applications. This list includes the
OpenMapi project,[2] the
Zarafa's MAPI4Linux (also part of
OpenMapi) and the
libmapi[3] subproject of the
OpenChange[4] project which is utilized in another OpenChange subproject called
Evolution-MAPI.[5] Evolution-MAPI is a connector provider that can be installed within the popular open source
Evolution groupware client.
External links
Messaging API at MSDN Library
OpenChange project - details of MAPI protocol and tools for exploring MAPI protocol
OpenMapi project - Open Source, multi-language MAPI implementation which can connect to other groupware sources, with API documentation
Messaging API Archived User Forum
相关文章推荐
- Internet Server Application Programming Interface
- 第6讲java的API(Application Programming Interface)
- API(Application Programming Interface,应用程序编程接口)
- API(Application Programming Interface)应用程序编程接口
- BAPI (Business Application Programming Interface)
- BAPI (Business Application Programming Interface)
- 系统调用与API(Application Programming Interface)的区别与联系
- 关于使用Visual C++ 编写API(Application Programming Interface)函数时编译那点事
- What's the difference and connection between API(Application Programming Interface) and SC(System Call)?
- OpenGL是一个优秀的专业化的3D的API(Application Programming Interface,应用编程接口)
- GPU NVIDIA_CUDA_Programming_Cuide_1.0 Chapter 4. Application Programming Interface
- Oracle Announces Oracle Cloud Resource Model Application Programming Interface
- 了解了解API(Application Programming Interface)(网摘)
- GPU NVIDIA_CUDA_Programming_Cuide_1.0 Chapter 4. Application Programming Interface
- API(Application Programming Interface,应用程序编程接口)详解
- Introduction to DirectShow Application Programming
- 转贴:C++ ABI (Application Binary Interface)
- 读programming application for microsoft windows时产生的一个疑问
- ABI——Application Binary Interface——应用二进制接口
- The Linux Programming Interface 13 File I/O Buffering 文件接口缓存