Creating a Server Application

This quick start procedure explains the set of tasks necessary to create a server application that will run with Microsoft Exchange Server. Server applications can be gateways, mailbox agents, or add-in applications.

All server application that run with Microsoft Exchange Server are programmed in C or C++, using Microsoft Visual C++. For more information, see Server Application Development Options.

For more information on developing server applications, see

Design Tasks

  1. Determine the role of the application. See Server Applications, Designing a Gateway, and About Mailbox Agents for more information.
  2. Decide how the application will be run and controlled. Will it run as a service of Windows NT Server? Will it have a user interface? Do you want it to be maintained through the Microsoft Exchange Server Administrator program?
  3. Decide whether to code the application from scratch or begin with an existing Microsoft Exchange Server sample application. For example, if you intend to develop a directory synchronization agent, you can start with the DIRSYNC sample application . For more information, see Creating a Directory Synchronization Agent.
  4. Decide whether you need to supply your customers with an installation program for the application. For information, see Setup Programs.

Implementation Tasks

If this is to be a service of Windows NT Server, see Installing an Application as a Service.

About Sample Source Code

The Microsoft Exchange Server SDK includes the source code (and compiled versions) of several sample applications written in C or C++. You can compile and run them in their present form, or change the source code to create new applications that meet your organization's specific needs.

Two particularly robust and helpful sample applications are:

Sample Mailbox Agent SMBAGENT, the sample mailbox agent performs the functions of a list server.

Sample Gateway For information about building and running the sample gateway, see Sample Gateway and Applications. For complete gateway development information, see the Gateway Programmer's Reference.