Microsoft BackOffice

Building Solutions with Microsoft Exchange and Microsoft Outlook

September 1997



Microsoft Exchange and Microsoft Outlook





Ó 1997 Microsoft Corporation. All rights reserved.

The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication.

This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT.

Microsoft, ActiveX, FrontPage, Outlook, PowerPoint, Visual Basic, Visual C++, and Visual J++, are either trademarks or registered trademarks of Microsoft Corportation.

Other product and company names mentioned herein may be the trademarks of their respective owners.


As an application design environment, Microsoft Exchange and Microsoft Outlook offer tight integration with Microsoft Office 97 and rich collaborative, administration, and messaging capabilities. This white paper details the features of the Microsoft Exchange application design environment and shows how it can be used to develop collaborative solutions to streamline business processes and enhance communication.

Building Collaborative Solutions

Now more than ever before, corporate users are faced with an overwhelming volume of information. The arrival of the Internet on the corporate desktop has opened new vistas for users, enabling them to extend their reach beyond traditional corporate boundaries, but it has also brought an increased level of complexity to their everyday business life. Corporate users today dont need more information, they need solutions for managing, sharing, and analyzing information. Now, with Microsoft Outlook 97 and the Web, users can develop such solutions quickly and easily using the tools provided by the application design environment of Microsoft Exchangeso information becomes useful, rather than unwieldy.

The rapid evolution of Internet technology has also clouded the future of corporate communications. In an uncertain and changing market, corporations can no longer afford to take the risk of committing resources to costly long-term business solutions, only to arrive at a dead-end solution. Plus, as corporations have downsized, IS resources have dwindled, leaving departments and workgroups to fend for themselves in terms of developing business solutions. With Microsoft Outlook and Exchange, designers can build strong collaborative applications in days, instead of months, so corporations can get the solutions they need without spending time and money on expensive programming resources. In addition, the Outlook design environment is integrated with Office 97 and Microsoft Exchange Server, so application designers can build and implement solutions for proven technologies with the confidence that these technologies wont disappear tomorrow.

Finally, as corporations have decentralized their operations, system administrators are challenged with the task of managing an ever-increasing number of applications developed at the workgroup level. As such, they need a way to provide centralized storage and security for applications and information as well as an easy way to integrate the applications into the overall business environment. Microsoft Outlook 97 integrates with Microsoft Exchange Server so that any applications developed with Microsoft Outlook 97 can take full advantage of the central administration, replication, security, and Internet features of Microsoft Exchange Server.

The three key ways to development collaborative solutions using Microsoft Exchange and Outlook are using built-in functionality, customizing and, finally, developing. This first portion of the paper discusses the value of using the built-in functionality of Microsoft Outlook and Exchange to create rich collaborative solutions. Then, customization of these solutions using the Outlook application design environment will be discussed. Finally, extending current Exchange and Outlook solutions using development tools and methodologies will be discussed.

Instant Collaboration Using Built-in Outlook Features

Microsoft Exchange and Outlook provide several personal management tools, such as Calendar, Tasks, and Contacts, that can greatly add to a users productivity. Although these modules provide great benefit for the individual user, their value can be dramatically increased when users share information in these modules by using the public folders and Internet connectivity of Microsoft Exchange.

Application designers can create a public folder based on a built-in Outlook module. Once located in public folders on the Microsoft Exchange Server, built-in features become instant collaboration because the information in their folders can be shared easily among the workgroup. Also, custom code and custom forms are not necessarythe instant collaboration application can take advantage of the existing forms and behavior of the built-in feature. As a result, built-in features can be used for scheduling group events, managing group tasks, and sharing and maintaining a customer contact list among a workgroup.

Calendar, Tasks, and Contacts features can be customizedwithout programmingto meet the specific needs of a workgroup or organization. For example, an application designer can create a generic Calendar public folder and then add custom views to the Calendar folder so the Calendar can be used specifically for entering and viewing the schedule of training classes for a workgroup.

The following sections provide a brief overview of how the built-in features can be customized and used in an organization to improve workgroup communication.


The Outlook Calendar module combines the functionality of Microsoft Schedule+ with the collaborative capabilities of Outlook. When located in the Mailbox or Personal folder, the Calendar module enables users to create personal schedules, create reminders, or set up meetings. When the Calendar module is copied to the Microsoft Exchange Server, however, it can be used for sharing group schedules, posting the significant events in a marketing kickoff campaign, making a class schedule publicly available, or posting company holidays in a public folder.

Figure 1. The built-in Calendar is located in the public folders so the class schedule can be viewed by all members of the organization. In addition, users can copy specific appointments to their personal Calendar.

Figure 2. The instructor can double-click an item and update class information, while the user can open the item and get more detailed information about a particular class.

Microsoft Exchange Server automatically makes this information available to any Web browser. Now, any Web client can take advantage of the rich scheduling features of Microsoft Outlook by using Microsoft Outlook Web Access.

Figure 3: Opening an appointment item from Internet Explorer using Microsoft Outlook Web Access.


When a Contacts folder is created in public folders on the Microsoft Exchange Server, workgroup members can add to, update, and share a list of contacts. For example, the sales department can share a list of leads, or the entire company can share a list of vendor contacts.

In the following example, a custom Marketing Materials Tracking view is created by adding two fieldsNot Interested and Materials Sentto the view. This view lets members of the marketing department track correspondence with potential customers without ever opening a form. As shown in Figure 3, if a prospective customer wants to receive information from the marketing department, the user can enter the date the material was sent in the Material Sent column in the view. If the customer is not interested in the material, the user can click a Not Interested check box directly in the view to notify other users not to contact the customer.

Figure 4. Built-in Contacts functionality is transformed into a Marketing Material Contacts application.


The Task module lets users keep track of their personal to-do lists and project schedules. When the Task module is created in public folders, a workgroup can share a common task list that shows whos responsible for tasks, as well as the status of tasks.

Using the Task module, a project manager can create a public Task folder. Individual users can then enter the tasks that they are required to complete as their part of the project. When users finish a task or make significant progress on it, they can update the task item in the public folder, thus allowing the product manager to get an overall view of the progress of a particular project.

Instant Collaboration with Exchange Server

In the past, when application development was the domain of IS departments, end users often waited forever for a custom solution, only to discover that when it arrived, it wasnt what they asked for and it was very difficult to change. Now with the easy-to-use Outlook application design environment, designers can develop their own solutionswithout programming. Making changes to views and forms is both fast and simple. And by using Microsoft Exchange Server for data repository and distribution, these instant solutions are available to not only people in your organization, but your business partners and customers over the Internet. This section will discuss the advantages of using the built-in collaborative features of Outlook with Microsoft Exchange Server.

Exchange Public Folders

Public folders are a key component of Microsoft Exchange Server. A key example of a public folder application that is very easy to create is a threaded discussion.


Figure 5. Threaded Best Practices discussion inside the Outlook client.

Figure 6. The same threaded Best Practices discussion inside a standard Web browser.

As you can see above, Exchange public folders make it easy for any client to access and add information to threaded discussions. Exchange Server automatically provides rich threaded views to both Outlook clients and standard Web browsers.

Public folders are the foundation on which corporate developers or even end users can create collaborative solutions. Public folders provide the necessary infrastructure and functionality that customers need to build solutions including replication, access control, a forms registry, easy view creation, and navigation. Getting started with public folders is as easy as creating a folder inside the Outlook client.


Figure 7. Creating a public folder that contains a shared group calendar.

Users can set the access permissions on their folders so that only specific people can author documents, add appointments, or create tasks while other users or groups of users can only read the shared information. Microsoft Exchange gives application developers granular control over the permissions granted to users of public folders, both authenticated and anonymous users.

Moderated public folders are a new feature introduced in Microsoft Exchange 5.0 that allows corporations to establish business processes for the approval of content in a public folder. For example, a corporation could set up a customer support public folder into which clients can submit questions using e‑mail or a Web browser. When an employee writes a response to the submitted question, a moderator/approver can review and approve the content. Only after the content is approved is it published into the public folder. You can turn any public folder into a moderated public folder by selecting the properties for the public folder.


Figure 8. Configuring a moderated public folder.

Public Folder Replication

Public folder replication enables users to share information anytime, anywhere, even in a disconnected state. For example, regional sales managers across the country can work together on the annual sales budget by posting regional budgets to a public folder. The regional budgets would be replicated by the Microsoft Exchange Server replication engine to ensure that all the sales managers across the country are working with the most current information. Subsequently, the vice president of finance can also access the information through the public folder. Because public folders support different views, the VP of finance could set up a view of the data that is different from that used by the regional managers.

One of the key strengths of Microsoft Exchange Server is its ability to distribute and synchronize shared information through the Microsoft Exchange Server replication system. This ability supports having multiple synchronized copies of folders in different locations, regardless of whether you are connected over a LAN, a WAN, the Internet, or an X.400 backbone. Replicating information in this way means:

         Synchronized copies of a public folder can reside on multiple servers, distributing the processing load and improving response time for users accessing information within the folder.

         Synchronized copies of a public folder can reside at several geographically separated sites, dramatically reducing the amount of long-distance WAN traffic necessary to access information.

         If a server holding one copy of a public folder becomes unavailable, other servers holding synchronized copies of the same folder can be accessed transparently, greatly increasing the availability of information for users and resulting in a highly reliable system.

Microsoft Exchange Server offers users the unique benefit of location-independent access to shared information. With replication, the physical location of folders is irrelevant to users and Microsoft Exchange Server hides the sophistication of the public folder replication process. Users need not be aware of where replicated folders are located, the number of replicated copies, or even that replication occurs at all.

Managing public folder replication is very easy. It is message based and uses the Microsoft Exchange Server fault-tolerant messaging infrastructure to simplify administration. The administrator need only select the servers that will receive replicas of the public folders. Microsoft Exchange Server does the rest.

Replication Control

Microsoft Exchange Server offers administrators a high degree of control over the entire replication process. A number of replication options can be set, including the times at which replication occurs and how information is replicated or distributed around the organization. For example, with a public folder stored at headquarters that contains a large number of documents, you may want to replicate only certain subfolders to servers located in the branch offices.

Figure 9. The scheduling grid in the administrators interface for folder replication makes it extremely easy to set replication times.

Public Folder Design

The Outlook client provides a rich public folder design and creation environment. With Outlook, designers can do most of the design work for views directly in the folder. For example:

          Drag and drop columns adjustment. With the Outlook client, designers can arrange columns by dragging the column header to the desired position. The designer never needs to open a dialog box.

          Add columns using the Field Chooser. Using the Field Chooser, designers can automatically add columns to a view by simply dragging fields from the Field Chooser to the folder.

          Group By box. Designers can dynamically create groups for views by simply dragging the Column Heading into the Group By box, as shown in Figure 10.

          In-cell editing. Often users want to change values in an item without actually opening the form to display the item. The Outlook client provides this option by enabling the designer to specify In-cell editing for a view. When In-cell editing is selected for a view, users can select checkboxes and edit text fields in the folder.

Figure 10. The Views Design Environment provides features that allows designers to construct views without opening a dialog box.


As you can see above, Microsoft Exchange Server and Outlook give corporations rich collaborative features out of the box. However, the requirements for some collaborative solutions may require that Outlooks built-in functionality be modified or customized. Outlook supports this customization of forms by allowing users to drag and drop new controls onto existing forms or customizing existing Office templates for use with Outlook. This section will discuss the easy customization of Outlook forms and Office templates to build collaborative solutions.

Outlook Forms Designer

The Outlook Forms Designer is a 32-bit environment thats built directly into the product, so opening the Forms Designer is as easy as opening a form in Outlook and clicking Design Outlook Form on the Tools menu. In addition, users can easily switch between Design and Run mode while working on a form. Outlook also provides a variety of features including:

          Outlook forms are fully 32-bit forms. So theyre fast and, perhaps equally important, theyre small, averaging about 10K.

          Outlook forms are not compiled. So theyre easy for users to keep track of and update. With Outlook forms, users dont need to worry about searching through folders or directories to find uncompiled source files to make changes to a form. In fact, Outlooks simple .OFT file format lets users make changes to forms and then publish them to a forms library as easily as they save a document file in Microsoft Word or Microsoft Excel.

          Outlook forms provide built-in functionality. When building an application, users always start with either a built-in module, sample application, or one of the standard message, post, or office forms. Because most of the functionality is already supplied for users, they can often build high-quality applications in days, sometimes hours.

          Outlook forms can be linked from a Web page. Outlook forms are stored in a simple .OFT file format and can be linked to from Web pages and other Office documents, so organizations can create repositories of custom collaborative forms that can be accessed through an Internet browser.

The Outlook Forms Designer provides a wide assortment of layout features to speed application development and give forms a professional appearance.

Figure 11. With the Outlook Field Chooser, designers can use built-in fields or create new user-defined fields. Outlook provides a full-featured toolbox to which the designer can add a full complement of custom or Microsoft ActiveX controls.

Creating Custom Fields

Microsoft Exchange Server allows the creation of custom fields in the Exchange database on the fly. These custom fields can contain different types of data including text, numbers and objects. Custom fields make it easy for developers to add custom data types to their application. For example, a helpdesk application may need to store the IP address of a clients machine. By adding in a custom field, the helpdesk technician now can easily type in the IP address of the machine using an Outlook‑ or Web-based form.

In the Outlook client, custom fields are created by starting the Outlook design environment and then selecting the All Fields tab. Under this tab, click the new button to create a new field for either this specific item or for all items in the folder.

Figure 12. Creating a new custom field in a folder.

Custom Form Design Based on Standard Outlook and Office Forms

When creating applications, designers can based their forms on one of four standard types of form:

          Mail Message form. Lets users send and receive items and respond to items. Items can be sent to another user, to a distribution list, or to a public folder.

          Post form. Lets users post, view, and respond to items in a folder. The Post form serves as the foundation for discussion applications with threaded conversation views that enable users to conduct and view online conversations.

          Office 97 Document form. Combines the power of Microsoft Excel, Word, or Microsoft PowerPoint with the collaborative and mail capabilities of Outlook. With Outlook, a form is essentially wrapped around an Office document so it can be sent as a mail message or shared in a public folder.

          Contact, Task, and Calendar forms. These built-in forms can be modified by showing additional pages on the form. Designers can then add controls to the additional pages to suit their particular needs.

Figure 13. The standard appointment form is transformed into a Technician Schedule form for a corporate helpdesk application.

Because the Contacts, Tasks, and Calendar forms are covered earlier in this white paper, this section will focus on Message, Post, and Office 97 Document forms. Each of these three forms support all the features of standard Microsoft Exchange forms, so designers can build forms with the certainty that the functionality they need, including digital signature and encryption, will be available.

Customizing Office Templates for Use in Outlook

With Office Document forms, you can build forms based on existing templates in your organization. For example, assume you already have Microsoft Word templates in your organization such as Beta Agreements, Contractor Agreements, or Job Estimates. With the Outlook Forms Design environment, designers can essentially wrap these templates in an Outlook form wrapper, so the templates document properties can be promoted in a public folder. This enables designers to create document library folders for a wide variety of purposes such as storing Contracts, Product Specifications, Job Estimates, Excel worksheets, or PowerPoint presentations.

In the following example, the Office form contains a Microsoft Word Beta Agreement template. To send a Beta Agreement to a customer, a user opens the Beta Agreement form from the Contract Library folder. The appropriate fields in the Word template are then filled out and the document form is sent over the Internet to the customer.

Figure 14. The Beta Test Agreement form is composed of the Outlook form combined with the Microsoft Word Beta Test Agreement template.

When the form is returned, it can be routed to the Contract Library public folder, where its fields can shown in a public folder. In addition, the fields can be used to organize documents in a custom view, as shown in Figure 8.

Figure 15. The Custom Properties in the Beta Agreement template, including Customer, Date, and CoLocation, are used to create column headings in the Beta Test Agreement view.

Samples of Customized Outlook Forms

Below are some samples of applications that contain forms that were customized using the Outlook Forms Designer:

Discussion Applications

Discussion folders are often referred to as on-line bulletin boards. These folders serve as a central location for users to submit, share, and respond to ideas and information. One of the most valuable features of a discussion folder is known as conversation threading, which enables designers to create rich views that show the history of responses to a particular item. The usefulness of Conversation Threading is demonstrated in the Job Candidate folder, as shown in Figure 16 , where interviewers hiring recommendations for a candidate are organized and posted in a public folder so the person in charge of hiring can get an overall view of the workgroups impression of the candidate.

Figure 16. The New Job Candidate item is posted to the Job Candidate folder. After workgroup members interview a candidate, they submit their hiring recommendation by responding to the Candidate item. The responses, as shown in the illustration, create a Conversation Thread. These discussion groups are automatically available to Web browser clients as is shown later in this white paper.

Here are a couple of other folder ideas that might help a company improve relations with its customers.

          Technical users group. Users, either customers or internal users, can submit solutions, ideas, and problems as well as review and respond to submitted solutions.

          Customer support bulletin board. This application records customer questions, the preferred response, and how the call was resolved. The information can be organized in a number of ways, such as by product or by customer.

Document Library Applications

Outlook folders are not limited to storing mail messages, so users can store graphic images, OLE objects, URLs, voice mail, and documents in a Reference folder. For example, a development workgroup can create a Specification Library for storing, organizing, and reviewing product specifications. In addition to documents and mail messages, users can store Web-site references in folders, so a list of useful Web sites can be shared and updated by a workgroup. In the following example, the Aero Web folder is used to store Web sites for the aircraft industry. From Microsoft Internet Explorer, users can save their favorite Web sites as URL files, then drag the files into the Web Reference folder. Other users can then simply click the item in the public folder to go to the Web site.

Figure 17. Web Reference Folder. The user clicks an item in this folder to activate Microsoft Internet Explorer and go to the Web URL.

Tracking Applications

Tracking applications let the user record and view information that is constantly updated. The following example shows a Customer folder that lets a helpdesk worker log and track Customer Service Request items. Notice the All By Status view is selected in the view box so that Customer Service Request items are grouped according to whether theyre open, on hold, or closed.

Figure 18. Customer Service Items are posted in the folder. When the status of a job changes, the user can open the folder, change the status, and save the item in the folder.

Collaborative Application Development

Sometimes customization of the standard Outlook and Office forms will not meet all the requirements for a corporations collaborative solutions. These solutions may require connectivity to other data sources such as Microsoft SQL Server or custom functionality. To meet these needs, Microsoft Outlook provides a rich development environment including the ability to host VBScript in an Outlook form and Exchange Server exposes a rich set of objects that can be programmed to. This final section of the paper describes the development environment for Microsoft Outlook and Exchange.

Advanced Outlook Forms Designer Features

The Outlook Forms Designer environment provides powerful tools that enable the designer to add intelligence and automation to forms and views. These tools include Microsoft Visual Basic Scripting Edition (VBScript), which is built into the Outlook Forms Designer, offering the designer the full capabilities of VBScript, a subset of the Microsoft Visual Basic for Applications edition. Using the Outlook Object model and VBScript, designers can add additional functionality to standard methods such as Open and Close, automatically create items and set properties on them, and add intelligence to forms so fields are automatically filled in for the user. The VBScript editor is described in more detail in the following sections.

Validated, Formula, and Combination Fields

Using the Outlook Forms Designer, the form designer can add functionality to fields, for example:

          Field validation can be built into forms to ensure that a specific value or a value range is entered into a field or that a field value is not exceeded. For example, for a purchase order form, if the value of the total box exceeds $2,000, the form can open a dialog box that explains to users that they must first submit the purchase order request to their supervisor for approval. To add validation to a field, the designer can use the Outlook Forms Designer to add this feature.

          Formula fields are great for forms that require total values such as timesheets, mileage reports, and sales reports. The process of creating formula fields is greatly simplified for the designer by the Outlook Forms Designer. As shown in Figure 18, the Outlook Forms Designer is used to create a formula for the TotalDays field that automatically calculates total vacation days based on the dates the user enters in the StartDate and EndDate fields.

Figure 19. The value in the Total Days field is automatically calculated by a formula.

Adding Flexibility to Forms with VBScript

Using VBScript and the Outlook Forms Designer Script Editor, designers can automate forms to save users time and to make forms easier to use. For example, in the Business Card Request Form shown in Figure 19, when the user clicks the Corporate Address checkbox, the address is automatically added to the lower business card portion of the form. In addition, when users enter their Name and Title in the form, these values are also automatically filled in the business card portion of the form. Figure 20 shows the Visual Basic script in the Script Editor window that automatically fills in the fields in the lower portion of the form.

Figure 20. The Business Card Request form uses VBScript to automatically fill in the bottom portion of the form for the user.

Figure 21. Using the Script Editor, VBScript is added to the form to automatically fill in the lower portion of the form for the user.

By using the VBScript in Outlook forms, the designer can easily connect any form to an ODBC data source such as Microsoft SQL Server or Microsoft Access.

In the next section of this white paper, leveraging of Exchange and Outlook information and technologies using standard web tools will be discussed.

Overview of Microsoft Exchange Collaboration Data Objects

Many businesses today are adopting Internet technology for communicating information internally among employees or externally with trading partners. Furthermore, organizations are looking for an easier way to create applications for the Internet and corporate intranets. The challenge is to find a technology that is easy to use and leverages existing investments. To meet those needs, Microsoft Exchange Server and Outlook deliver support for new Web technologies, allowing businesses to use Microsoft Exchange as a key component of an intranet or Internet messaging and collaboration solution.

This technology for integrating Exchange with Web applications is called Collaboration Data Objects (CDOs). CDOs allow the novice and expert developer to combine HTML and core Exchange technologies such as messaging, scheduling, and collaboration to create a new generation of business applications. They integrate with the Microsoft Active Platform, allowing developers to easily leverage all of the services of Microsoft Exchange Server as well as other Microsoft and third-party services using any Web browser as a front end.

CDOs are an Active Server Component that allows developers to easily build interactive Web-based applications using the rich data storage, directory, and messaging capabilities of Microsoft Exchange. The applications that use CDOs make ordinary Web pages more rich, interactive, and compelling by adding Microsoft Exchange services such as threaded discussions. Below is an example of a Web-based helpdesk application based on Microsoft Exchange Server.

Figure 22: Helpdesk application that uses CDO library to access Exchange information

CDOs have two key components, a collaboration object library and an HTML rendering object library. Both libraries are rich in functionality and are extensible so developers can create custom solutions.

          Collaboration object library. This library provides logon services, access to inbox and public folder information, and access to the Exchange directory. Using this library, application developers can enable users to do standard messaging functions (send, receive, delete, and move messages, folders, and attachments), access and create scheduling information, and look up directory information for users directly from a Web interface.

          HTML rendering object library. This library extends all the rich view functionality that users have come to expect from todays messaging clients, such as the Outlook client, to the Web. These views include columns, grouping, sorting, filtering, and conversation threading on folders and messages. Users can render daily, weekly, and monthly views on calendar information. These integrated rendering methods shield developers from having to create complex HTML. By simply calling a Collaboration Data Object function, any view can be rendered without coding any HTML.

Note: For more in-depth information on the Collaboration Data Object library and developing to Microsoft technologies, please download the Platform SDK from For more information on how to develop rich Web solutions using Collaboration Data Objects, please read the Microsoft white paper Developing Web Solutions using Microsoft Exchange Server. For discussion groups on Microsoft Exchange/Outlook application design, please visit For sample applications, please visit the Microsoft Exchange App Farm at

Outlook Web Access

An example of a production application built using the Collaboration Data Objects library is Microsoft Outlook Web Access. Outlook Web Access is a browser-based client that allows access to e‑mail, calendar, directory, and public folder information. Outlook Web Access is available as a part of Microsoft Exchange Server and provides a great starting point for people looking for example code to use in their own Web applications.

Figure 23. Weekly Calendar view from Outlook Web Access using Microsoft Internet Explorer.

Microsoft Exchange Development Tools

Microsoft Exchange supports a broad range of development tools. These tools range from desktop tools such as Visual Basic for Applications included with Microsoft Office to enterprise development tools such as Microsoft Visual Studio, which includes Visual Basic, Microsoft Visual C++ and Microsoft Visual J++. The Collaboration Data Objects library can also be programmed using Microsoft Outlook or any standard Web tool and language such as VBScript and JavaScript.

Figure 24. Exchange Web Discussion Wizard in Microsoft FrontPageYou can use standard Web tools such as FrontPage to develop Microsoft Exchange collaborative applications.

Microsoft Exchange Scripting Agent

Many collaborative applications require the ability to implement custom actions based on a users actions. For example, an expense reporting application may need to route an expense report to a specific person for approval based on the amount. The ability to create custom actions allows corporations to streamline and automate business processes. Microsoft Exchange Server provides custom action functionality through a new feature called the Exchange Scripting Agent.

The Microsoft Exchange Scripting Agent lets you [PAS1] use server-side scripts that run as a result of events occurring in folders. Such triggering events include timer events and actions such as posting, editing, or deleting a message, and they can take place in private folders (mail boxes) or public folders. You need sufficient folder permissions to install and enable event-driven folder scripts.

You can write these scripts in VBScript, JavaScript, or other supported scripting languages, and you can use Notepad (by default) or Microsoft Visual Studio (specifically the Microsoft Developer Studio IDE) as your script editor. Also, you can create custom agents that are not programmed using scripting languages but instead are compiled objects created in Visual Basic, Visual C++, Java, or any other programming language that supports Component Object Model (COM).

Figure 25. Expense Report status page that uses the Microsoft Exchange Scripting Agent to route and track expense reports.

The Microsoft Exchange Scripting Agent allows corporations to build workflow-enabled applications on their existing Exchange infrastructure. For more information on the Microsoft Exchange Scripting Agent, please visit

For More Information

There are a number of good sources for more information on how to build collaborative solutions using Microsoft Outlook and Exchange. A few include:


         Krebs, Peter. Building Applications with Microsoft Outlook 97. Microsoft Press, 1-57231-536-9 ISBN.

         Matthews, Martin S. The Microsoft Outlook Handbook. Osborne/McGraw-Hill.

         Catapult, Inc. Microsoft Outlook 97 Step-by-Step. Microsoft Press.

         Woodcock, Joanne. Understanding Groupware in the Enterprise. Microsoft Press, 1-57231-561-X ISBN.


         Rizzo, Thomas, and Dan Fay. Microsoft Exchange Server and the Web. Microsoft Interactive Developer, June 1997,

SDKs and Web sites

         Microsoft Platform SDK at

         Microsoft Outlook Development Web site at

         Microsoft Exchange Appfarm at

 [PAS1] This doc should go out coincident with Active Messaging 2.0 docs. October MSDN is a good target for this doc. But it would be good to have a preliminary version of this doc ready to ship with our RC1 beta at the end of July. - Jimre