img img img img img  
Home Development Partners Resellers About  
img   img After a few years of investigating and building MAPI clients applications, we shifted part of our development team to the "MAPI inferno" - the service providers. This area of MAPI cannot be done with any kind of third-party custom MAPI components we know - they all have proved inapplicable here.
img Extended MAPI in DELPHI - Service Providers
(Extended MAPI in DELPHI - Service Providers)
Delphi & ADO & MAPI Together

ADO Address Book Provider
(Microsoft Access 2000 realization)

Knowing both ADO and Extended MAPI very well one may develop one's own design of MAPI Service Provider that would unify them. We started off with the easiest to implement but also most commonly used Service Provider - Address Book.

We did our best to make our Address Book work on all Outlook versions since 1996 - starting with Windows Messaging and covering the last version. The code also can be compiled with minimal changes by Delphi 5 to Delphi 2007.

In addition we wanted the information provided by our Address Book to be used not only in Outlook but also in the form of a desktop application.
For the basic design we chose Microsoft Access as a storage that will use our data, because it is very popular and because every Windows version after NT4 is capable of processing the queries to it without having to install any additional software.

Our Address Book based on ADO and Extended MAPI uses intensively the COM interfaces provided by Microsoft - for ADO: Connection, Command, Recordset; and Extended MAPI: IABProvider, IABLogon, IABContainer, IMailUser, IDistList, etc.
We avoided using ready-made Delphi components for the ADO part in order to enhance performance, and to reduce the size of the compiled end DLL.

The current version included in the project consists of two parts - an Administrative part and the Address Book Provider itself. In the administrative part one can create new entries (contacts) in the database that will be accessible afterwards in Outlook through our Address Book.


For the Outlook user all entries (contacts) that our Address Book offers are read-only, that is they cannot be edited. This is done in order to avoid editing or harming the data by chance. Of course all this does not interfere with the process of sending e-mails to the users from our Address Book.




Read more for our ADO DB Extended MAPI Address Book Provider  img  (PDF Size: 2 MB)

Download DEMO

See a few screen shots!


Microsoft Access 2000/2003 or Microsoft SQL Server 2000/2005
as MAPI Message Store for Outlook

The IMIMSP32 is a sample message store that uses Microsoft Office Access 2000/2003 MDB or Microsoft SQL Server 2000/2005 (incl. Express Edition) as backend store.

Supported Features

Basic operations. The message store supports:
  • reading, creating, modifying, and deleting messages;
  • browsing, creating, and deleting folders;
  • submitting outbound message to transports;
  • and associating all types of attachments with messages.

Multivalued properties are supported for all objects. The message store can be used as a default message store for a MAPI client (please call for more info)

Copy operations.

The sample message store supports moving and copying messages and folders. These operations are delegated to MAPI support functions unless an operation occurs entirely within one message store.

Event notification.
The sample message store supports event notification on tables (again, courtesy of IMAPITableData).

Named properties
GetNamesFromIDs and GetIDsFromNames methods of IMAPIProp.

Folder-associated information (MAPI_ASSOCIATED, DEL_ASSOCIATED flags).

Unsupported Features
  • Categorization of contents tables.
  • IMAPIStatus interface.

Known Problems

Reminder service doesn't work correctly.
When Microsoft Access is backend store, provider is unstable when MDB size is grown over 1 GB.
Read more for our ADO DB Message Store  img  (PDF Size: 200 KB)

Download DEMO

Love us? Hate us? Questions or comments?
If you have any questions, concerns, compliments, or suggestions about these articles - write us

If you expect "Mickey Mouse fee" for source code licensing, please do not bother us!

Copyright 2021 IMIBO
Privacy Statement