Important:
This is retired content. 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 content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
4/8/2010

Windows Mobile messaging applications are built using interface members belonging to the Messaging API (CE MAPI) Reference. CE MAPI definitions are referenced in the Cemapi.hheader file, and are implemented in the Cemapi.libfile. This section contains topics that present procedures with code examples that show you exactly how to use CE MAPI to create a messaging application.

In This Section

Beginning a MAPI Session

Before you can access a message store, you must initialize the MAPI subsystem and log onto a MAPI session. This gives you a reference to an IMAPISessioninterface object, which you can use to access the message store table, message stores, message folders, and messages.

Ending a MAPI Session

When the user is done performing messaging tasks, there is no further need to consume valuable system resources with the messaging subsystem. At this point, it is a good idea to free resources by ending the MAPI session.

Connecting to a Message Store

Before you can create and manipulate message folders and message items, you must establish a connection to a message store.

Creating a Message

New messages are always created from a message store's Draftsfolder. After you create a message, you can set its property values (subject, body, list of recipients, and so on) and then send the message.

Sending a Message

New messages are always created and sent from a message store's Drafts folder. After you create a message, you set its property values (subject, body, list of recipients, and so on) and then post the message.

Registering Customized Messaging Forms

Customized messaging forms and transports require registry value sets under three registry keys. The first registers the form as a message class. The second specifies a messaging transport. The third specifies the message classes supported by the transport. When the message classes are input forms that appear on the "New" submenu of the Text Messages account, it is possible to specify the order in which the forms are listed in this submenu.

Registering Customized Messaging Transports

Customized messaging transports require one registry entry. It specifies the name for the new message transport, along with the name of the DLL that contains it.

Registering Customized Messaging Rules Clients

Customized messaging rules clients require two separate registry entries. The first one registers the messaging rules client as a COM server, specifying its GUID. The second entry specifies the message transport(s) to use.

Related Sections

Establishing a POOM Session

Details the steps that must be performed before you can create and manipulate PIM items. Before you can create and manipulate PIM items, you must first create an instance of the IPOutlookAppand then use it to establish a POOM session, which opens a connection to the PIM database.

Creating a PIM Item

Details the steps involved in creating a PIM item.

The three PIM item types— IAppointment, ITask, and IContact—are the main object types in the Pocket Outlook Object Model, and the procedure for creating them is identical for all three.

Adding PIM Items to the Outlook Mobile Database

Details the steps involved in adding a PIM item to a collection. This involves calling the item's IContact::Savemethod.

Retrieving a PIM Item from the Outlook Mobile Database

Details the steps involved in retrieving a PIM item from a collection. This involves calling the IPOutlookItemCollection::Itemmethod on the collection.

Finding a PIM Item Within a Collection

Details the steps involved in searching a collection for a particular PIM item. This involves calling the IPOutlookItemCollection::Findmethod on the collection.

Listing All PIM Items in a Folder

Details the steps involved in listing all of the PIM items in a collection. This involves determining the number of items in the folder and then looping through the collection to iteratively retrieve a particular PIM item from the database.

Creating a Meeting Request

Details the steps involved in creating a meeting request. Any Appointment becomes a meeting request when you retrieve its list of IRecipients, specify one or more IRecipients, and then send the Appointment.

Creating a Recurring Appointment

Details the steps involved in creating a recurring appointment. Any Appointment becomes a Recurring Appointment when you retrieve its IRecurrencePatternobject, set the recurrence values, and then save the Appointment.