|
With the release of Microsoft Exchange Server 4.0 in Q1 1996 Microsoft has introduced the OLE Messaging library in the version 1.0 (now called CDO 1.0) to give developers the ability writing applications on top of Microsoft Exchange.
With the release of Microsoft Exchange Server 5.0 in Q1 of 1997 Microsoft has renamed the OLE Messaging library to Active Messaging library (now called CDO 1.1) and included new functionality such as using Active Server Pages technology to access Exchange information (also known as Outlook Web Access) and updated it to version 1.1.
With the release of Microsoft Exchange Server 5.5 in Q4 1997 Microsoft again renamed this technology from Active Messaging to Collaboration Data Objects (CDO).
The Microsoft Collaboration Data Objects are available in a library known as CDO 1.2 (included in Microsoft Exchange Server 5.5) and CDO 1.21, included in Microsoft Outlook 98/2000 and Microsoft Exchange Server 5.5 Service Pack 1 or higher, which replaces the Active Messaging object library version 1.1.
Microsoft continues to enhance CDO and build new versions with the next generation of Windows and Exchange. The following versions are included with Windows 2000 and/or Exchange 2000.
The following table provides an overview of the different CDO libraries that are either included with Windows 2000 or Exchange 2000. Each component is described more detailed below:
| Component | Implements specification | Description |
|---|---|---|
| CDO for Windows 2000 | CDO 2.0 | CDO for Windows 2000 (also known as CDOSYS) COM component to
create SMTP and/or NNTP based applications upon the Windows 2000
platform. Included in any version of Windows 2000. Does not run on any other operation system. |
| CDO for Exchange 2000 | CDO 3.0 | CDO for Exchange 2000 (also known as CDOEX) COM component to
create collaborative applications based upon the Windows 2000
and the Exchange 2000 platform. Included in Exchange 2000 Server & Enterprise Server. Runs only on top of the Exchange 2000 Server computer. |
| CDO Workflow for Exchange 2000 | CDO 3.0 | CDO Workflow for Exchange 2000 (also known as CDOWF) COM
component to build workflow functionality on top of Exchange
2000. Included in Exchange 2000 Server & Enterprise Server. Runs only on top of the Exchange 2000 Server computer. |
| CDO Management Objects for Exchange 2000 | CDO 3.0 | CDO Management Objects (also known as EMO) COM component to
manage an Exchange server. Can be used to create, move and
delete mailboxes or manage users, contacts, and groups etc. Included in Exchange 2000 Server & Enterprise Server. Runs only on top of the Exchange 2000 Server computer. |
| Personal Knowledge Management CDO | n/a | CDO for SharePoint Portal 2001 Server (also known as
PKMCDO). Implements features to build knowledge management
applications, like document management & versioning. Included in SharePoint Portal 2001 Server and Office XP. Runs on top of the SharePoint Portal 2001 Server or any other computer that has Office XP installed. |
CDO for Windows 2000 is the Collaboration Data Objects Library for Microsoft Windows 2000 (also known as CDOSYS), formerly referred as CDO 2.0. It is a COM component designed to simplify writing programs that create or manipulate Internet messages. CDO for Windows 2000 is one in a suite of collaborative COM components referred to collectively as CDO. The CDO for Windows 2000 is an integral part of the Windows 2000 series of operating systems.
The COM classes provided by CDO for Windows 2000 expose dual interfaces that enable you to use them in applications written in languages that support the Component Object Model (COM) and Automation, such as Microsoft Visual Basic, Microsoft Visual C++, Microsoft Visual J++, and scripting languages such as Visual Basic, Scripting Edition.
CDO for Windows 2000 is designed for creating both client and server applications for computers running Windows 2000 and supports creating and managing messages formatted and sent using Internet standards, including the Multipurpose Internet Mail Extensions (MIME) standard. The CDO for Windows 2000 component supports sending messages using both the SMTP and NNTP protocols, as well as through a local SMTP/NNTP service pickup directory.
CDO for Windows 2000 includes a single dynamic-link library (CDOSYS.DLL) that you can use to create two basic application types:
For typical applications, you can send or post messages with only a few lines of code. The CDO component handles most of the details. Your application can always change the default CDO behavior; CDO exposes a complete set of properties and methods for when you need more control.
The following scenarios are examples of the types of applications you can write using CDO.
CDO for Exchange 2000is the Collaboration Data Object library for Microsoft Exchange 2000 (also known as CDOEX), formerly referred as CDO 3.0, the follow-up version of CDO 1.2. CDO for Exchange 2000 is included in Microsoft Exchange 2000 Server. While the name implies to be an update of it's predecessor, it is a completely new designed library which doesn't rely on Extended MAPI any longer. Instead Exchange 2000 includes an OLEDB provider which is used by CDO for Exchange 2000.
CDO for Exchange 2000 does have a different object model than CDO 1.2 and includes extensions to the OLE DB and ADO programming model. It is a superset of CDO 2.0 and enables new functions, such as voicemail, fax and pager support. Also included is enhanced scheduling and contact management and support for MIME headers (including S/MIME) and MHTML (HTML message bodies). Last but not least, a future release of Microsoft Outlook (neither Outlook 2000 nor 2002 currently does) will also support CDO for Exchange 2000.
The following table provides a short overview of the features and capabilities of each library:
| Feature | CDO 1.2 for Exchange | CDO 1.2 HTML Rendering | CDO 1.2 for Windows NT Server | CDO for Windows 2000 | CDO for Exchange 2000 | Personal Knowledge Management CDO |
|---|---|---|---|---|---|---|
| Based on OLEDB | No | No | No | No | YES | YES |
| Based on MAPI | YES | YES | No | No | No | No |
| Supports MAPI profiles | YES | YES | No | No | No | No |
| Supports authenticated users | YES | YES | No | No | YES | YES |
| Supports address book access | YES | YES | No | No | YES (using CDOEXM) | no |
| Supports remote server access | YES | YES | No | YES | No | No |
| Supports SMTP access | No | No | YES | YES | YES | No |
| Supports NNTP access | No | No | YES | YES | YES | No |
| Supports Outlook calendar access | Partially (no public folder calendars) | Partially (no public folder calendars) | No | No | YES | No |
| Supports Outlook contact access | Partially (not documented by Microsoft) | Partially (not documented by Microsoft) | No | No | YES | No |
| Supports Outlook task access | No | No | No | No | Partially (not documented by Microsoft) | No |
| Supports Outlook journal access | No | No | No | No | Partially (not documented by Microsoft) | No |
| Supports HTML rendering | No | YES | No | No | No | No |
| Supports MHTML messages | No | No | YES | YES | YES | YES |
| Supports MIME message types | No | No | YES | YES | YES | YES |
| Supports RTF message types | Partially (using an additional DLL provided by Microsoft) | YES | No | No | No | No |
| Supports NewMail object | No | No | YES | No | No | No |
| Can be called from ASP | YES | YES | YES | YES | YES | YES |
| Compatible with IIS 4.0 | YES | YES | YES | No | No | No |
| Compatible with IIS 5.0 | YES | YES | YES | YES | YES | YES |
| Compatible with CDO 1.1 applications | YES | YES | No | No | No | No |