About Message Services

A message service defines a group of related service providers, typically service providers that work with the same messaging system. Whereas service providers perform the work of interfacing between messaging systems and the MAPI subsystem, message services perform the work of interfacing between service providers that work with a common messaging system and the user.

Message services exist to make the installation and configuration of service providers easier for users. Users never directly install or configure a service provider; this installation and configuration is completely handled by the message service, making knowledge of service provider configuration requirements unnecessary. For example, when a user wants to install the service providers for the CompuServe Information Service, that user installs a single message service. The installation component in the message service handles the installation of each of the service providers that belong to the service.

The following illustration shows the relationship between a messaging-based client application and two message services. The user invokes the installation code of each message service to add the service and its service providers to a profile. In one of the message services, there are three service providers and in the other there are two. At some later time after installation is complete, typically at logon time, the service providers in each message service are configured. The configuration code in each message service handles the configuration of the providers in the service.

When a message service is installed, its installation program copies necessary files from the installation source to the user's local disk and updates a configuration file, MAPISVC.INF. The MAPISVC.INF file holds configuration settings for all of the message services and service providers that can be installed on the computer. It is organized in hierarchical sections, with links between each section at each level. The section at the top level contains information relevant for the MAPI subsystem, such as a list of all available message services, and for the online help installation. The next level has sections for each message service, with information such as the DLL filename of the message service and the name of its configuration entry point function. The third level has sections with configuration data for each service provider in the message services.

To handle configuration, a message service implements an entry point function that conforms to a prototype defined by MAPI and a tabbed dialog box known as a property sheet. MAPI calls the entry point function to service client requests that relate to profile management and the management of service providers within the message service. Property sheets are used for viewing and changing message service and service provider configuration properties.