Selecting a Client Interface

Client application developers can choose to use one or more of the MAPI client interfaces: Simple MAPI, CMC, MAPI, and the Active Messaging Library. Consider the following factors before making a decision:

The language in which your client application will be written or is written is an important issue. If you are modifying an existing application, you must use a client interface that supports your application's language. If you are writing a new client application, the choice of language depends on your experience with the supported languages and any requirements for interoperability that might exist with other components. All of the client interfaces work with C and C++, whereas Visual Basic developers are limited to using the Active Messaging Library and Simple MAPI.

The amount of time you need to create or modify your client application is also a consideration. A simple API such as Simple MAPI or CMC is more appropriate if you have limited time. Resource constraints might also be an issue. To successfully develop a client application, you should have experience with messaging and the appropriate programming language.

Messaging-enabled and messaging-aware client applications have different requirements than messaging-based applications. Messaging-enabled and messaging-aware applications have fewer and simpler messaging features to implement. Messaging-based applications have more complex messaging requirements because they have more direct contact with and control over the underlying messaging system services like address books, message stores, and transports. These applications often implement a wide variety of messaging features, such as rules processing, automatic forwarding, and supporting Rich Text Format. Shared group applications like schedulers and calendars, work flow and message management applications, electronic mail clients, and rules-based Inbox managers are examples of messaging-based applications. Complex messaging-based applications like these require the MAPI client interface.

The Active Messaging Library is a good choice for applications that require a moderate amount of messaging support. The Active Messaging Library is an object oriented API used primarily by Visual Basic and Visual C/C++ client application developers. It provides programmable objects that publish properties and methods which can then be managed by Visual Basic and Visual Basic for Applications programs or other Automation controllers. The Active Messaging Library is based on the capabilities provided by Automation. In terms of messaging functionality, it offers more than CMC and Simple MAPI offer, but less than MAPI offers.

Simple MAPI or CMC is the best choice for messaging-enabled and messaging-aware applications. These interfaces provide a fast and easy way to build basic applications from scratch or add messaging functionality to existing applications.