MAPI defines a set of interfaces that relate to message store providers. Because of the wide range of features that a message store can choose to implement, some of these interfaces are required and some are not. The following table lists the MAPI interfaces that are related to message store providers, specifies whether the interfaces are required or optional, and describes their purpose.
|
Interface
|
Status
|
Description
|
|---|
|
IMSProvider
|
Required
|
Logs on to and off of a message store.
|
|
IMSLogon
|
Required
|
Opens folders or messages, verifies the message store's identity, and handles notifications.
|
|
IMsgStore
|
Required
|
Opens folders or messages, finds special folders, and handles message submissions.
|
|
IMAPIFolder
|
Required
|
Finds and manipulates messages and subfolders.
|
|
IMessage
|
Required
|
Manipulates attachments and sets some of a message's properties.
|
|
IMAPITable
|
Required
|
Enables other objects to present collections of data to various MAPI components.
|
|
IMAPIStatus
|
Required
|
Enables clients to validate the state of a message store and to perform some configuration tasks.
|
|
IAttach
|
Optional
|
Accesses message attachment properties if the store provider supports file attachments.
|
|
IStorage
|
Optional
|
Manages structured storage objects if the store provider supports OLE object attachments.
|
|
IStream
|
Optional
|
Enables message and attachment objects to read and write data to stream objects.
|
|
IStreamDocfile
|
Optional
|
Enables some service providers to open a storage object, such as a compound file in the OLE 2.0 file format.
|
The basic information you need to implement IMAPIFolder, IMessage, IMAPIStatus, and IMAPITable is documented in the reference topics for these interfaces. This section contains supplementary information that is more directly related to message store providers. The rest of the MAPI interfaces should be implemented according to the information in this section and in the appropriate reference topics. See the COM and ActiveX Object Services section in the Windows SDK for more information about implementing IStorage, IStream, and IStreamDocFile.
See Also