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.
A version of this page is also available for
4/8/2010

ActiveSync provides ActiveSync service providers for common applications and data types.

Provider Name Desktop Provider Desktop Provider Base Address Device Provider Supported Object Types

Outlook Synchronization

outstore.dll

0x22000000

pegobj.dll

Appointment Contacts Inbox Task

Windows Mobile File Synchronization

cefstore.dll

0x23000000

cefobj.dll

File

Mobile Channels Synchronization

aafstore.dll

0x24000000

aafobj.dll

Channel

Service provider support for other types of data is written by OEM or third-party developers. Although this requires some programming effort, it also assures that any application or data type can be supported. This and the following sections explain the steps required to create custom service providers.

Before writing an ActiveSync service provider, you must define the object, object type, and object identifier, as well as the folder and store that will hold the object. You must also decide how you will determine whether two objects are identical, and whether an object has changed.

The code you write is contained in interfaces and methods whose names and parameters have already been defined — the desktop provider and the device provider.

The desktop providerhandles the bulk of communication with the service manager and implements two COM interfaces.

COM interface Description

IReplStore:IUnknown

Enumerates objects in a store, checks for changes in an object, and displays a user interface so the user can set synchronization options and resolve conflicts.

IReplObjHandler:IUnknown

Serializes and deserializes data, and deletes objects.

The device providerimplements the same IReplObjHandlerinterface as the desktop provider, plus the following functions.

Function Description

InitObjType

Initializes data and returns a pointer to the IReplObjHandlerinterface when the device provider loads and, when the device provider terminates, frees allocated resources.

ObjectNotify

Calls the service manager when an object in the object store for a Windows Mobile device is changed or deleted.

GetObjectType

Returns the type of the specified object.

ReportStatus

Optional. Returns status for synchronization objects.

See Also