Many options are available to developers writing services for Microsoft Exchange Server. The following topics discuss development options for server applications.
You can set and manipulate access control list (ACL) entries on folders in the server store. (Note: This cannot be done from the Active Messaging Library.) Visual C++ can be used to set and manipulate ACL entries. See About Access Control Lists and ACLEDIT: Modifying an ACL.
You can set and manipulate rules on inboxes or folders. Rules are evaluated by the server when incoming messages arrive. This action may take place immediately or be deferred until the client logs on. When you manipulate rules with your application, you can only specify actions that can be carried out by the server. Visual C++ can be used to set and manipulate rules. See RULEEDIT: Manipulating Rules.
You can create and delete folders using the Microsoft Exchange Client or MAPI. (Note: The Active Messaging Library does not support this functionality.) You can also make folders invisible on information stores. but not in the public folder hierarchy displayed by the Microsoft Exchange Client. To restrict visibility, the folder must be created beneath another folder that has restricted user permissions. See TOOLFORM: Creating a C or C++ Form and the Microsoft Exchange Server Application Designer’s Guide.
You can create custom actions for a personal folder store (PST) based on rules. Custom actions are only available for PSTs because the necessary executable file must run on the client. However, the action could access the server-based information store. Most available tools can be used to create this type of application. See CRARUN: Creating a Custom Rule Action.
You can create new fields and store information in a message. You can add named properties to a MAPI folder object, and you can add named properties to any directory entry. The Administrator program provides custom properties for some applications. You can also use MAPI and Visual C++ to create these application types. See EXTDATVW: Viewing and Editing Extension Data and Administrator Program_Extensions.
You can override the default conflict-resolution options provided with Microsoft Exchange Server. Such an application is attached to a form. Microsoft Exchange Server functions, MAPI functions, and Visual C++ can be used to create this type of application. See Resolving Message Conflicts with Forms.
You can add property pages for the following objects:
Visual C++ can be used to create new property pages. For more information, see Administrator Program_Extensions.
You can control your application from the Administrator program by adding new property pages that manipulate objects exposed through the Administrator program. Microsoft Exchange Server functions and Visual C++ can be used to create these types of applications. See Creating an Administrator Extension DLL.
You can combine any of the other development options listed here to create new functionality for Microsoft Exchange Server. The Microsoft Exchange Server functions, Win32 functions, and Visual C++ can all be used. See Server Applications.