CDOEXM Evaluation Criteria

Topic Last Modified: 2008-09-03

CDO for Exchange Management (CDOEXM) provides the fundamental Component Object Model (COM) classes and interfaces that are used to manage the Exchange store. Before you can use the CDOEXM objects, the Microsoft Exchange Administrative tools must be installed on your computer.

Important

CDOEXM does not ship in and is not supported by Microsoft Exchange Server 2007. Use the Exchange Management Shell to perform management tasks.

Caveats

CDOEXM can only be run on a computer on which the Exchange 2000 or 2003 Administrative tools have been installed. The computer running the CDOEXM application and the computer running Exchange 2000 or 2003 must be in the same Active Directory service organization.

Important

Because of issues with multiple-hop authentication and unexpected results observed in multithreaded runtime environments, we do not support the use of CDOEXM in Microsoft ASP.NET pages, ASP Web pages, or Web services. To create Web-based Exchange management applications that use CDOEXM functionality, we recommend that you wrap CDOEXM in a Distributed Component Object Model (DCOM) package, and then call that package from your application.

Functional Criteria

Criteria Collaboration Data Objects for Exchange Management (CDOEXM)

Application Domain

CDOEXM is used in administrative applications and scripts to control, examine, and diagnose Exchange 2000 and 2003 servers and stores.

Major Objects

CDOEXM provides COM/Automation-compatible objects that represent components of Exchange 2000 and 2003 servers. These include the ExchangeServer, FolderTree, MailboxStoreDB, PublicStoreDB, and StorageGroup classes.

Data access model

Mixed: collections of some object types can be accessed as ADO rowsets by using the DataSource object. The individual rows represent other CDOEXM objects.

Threading Models

No specific threading prohibitions. However, applications that use free-threading should never share CDOEX object instances among asynchronously operating threads.

Application Architectures

Typical uses are for administrative tools and scripts that use CDOEXM and ADSI to operate on Exchange servers, stores, and folder trees. Applications that use CDOEXM must be run on a computer that has the Exchange Management Tools installed.

Remote Usage

CDOEXM can only be run on a computer where the Exchange 2000 or 2003 Administrative Tools are installed.

Transactions

No.

Management Capabilities

CDOEXM does not generate Windows Event Log entries, and no performance counters are available to measure it.

Availability

Shipped with Exchange 2000 Server and Exchange Server 2003. CDOWF does not ship with and is not supported for Exchange 2007. The CDOEXM version that ships with Exchange Server 2003 must be used when accessing Exchange Server 2003. The Exchange Server 2003 CDOEXM can also be used to access Exchange 2000 Server. The CDOEXM library that ships with Exchange 2000 Server is not supported for accessing Exchange Server 2003.

Development Criteria

Criteria Collaboration Data Objects for Exchange Management (CDOEXM)

Languages and Tools

CDOEXM can be used with any COM/Automation-compatible language, as well as with non-COM languages such as C/C++.

Managed Implementation

CDOEXM is an unmanaged component. Use if CDO for Exchange Management is supported under the COM Interoperability layer of Visual Studio.NET and the .NET Framework. CDOEXM can only be run on a computer on which Exchange has been installed.

Scriptable

CDOEXM is scriptable by means of the Windows Scripting Host, but it is not supported in ASP or ASP.NET.

Test/Debug Tools

No special debugging tools are needed to debug applications that use CDOEXM.

Expert Availability

While only moderate development skills are necessary to use CDOEXM, understanding the Exchange and Active Directory topology can require significant study.

Available Information

Microsoft and third-party books that describe programming for Exchange by using CDOEXM are available. In addition, CDOEXM is documented in the Exchange 2000 Server SDK and the Exchange Server 2003 SDK. Use the documentation that is appropriate to the version of Exchange for which you are developing. To access the Exchange 2000 Server and the Exchange Server 2003 SDKs, see the Exchange Server Developer Center.

Developer/Deployment Licensing

Refer to your Exchange and MSDN subscription licensing agreements to determine whether additional licenses are required for the computers where your CDOEX applications are developed and deployed.

Security Criteria

Criteria Collaboration Data Objects for Exchange Management (CDOEXM)

Design-time Permissions

Depending on the development environment and configuration being used, developers might need Exchange administrative permissions for the servers with which they are working. Use caution when granting anyone unrestricted access to user mailboxes and Exchange system configuration settings.

Setup Permissions

Applications that use CDOEXM must run on either an Exchange server or on a computer where the Exchange Administrative tools are installed. The user who is setting up the application must have permissions to install software on that computer. In addition, if Setup makes changes to Exchange, the user must have permission to access that data or make the configuration changes.

Run-Time Permissions

Because CDOEXM controls and configures components of an Exchange server, only Exchange administrators should be permitted to run applications that use CDOEXM. For applications that use CDOEXM from an Exchange administrative console computer, it must be in the same domain as the Exchange server computer.

Built-in Security Features

CDOEXM uses the underlying Microsoft Windows 2000 (or Windows Server 2003) security features. Most operations require that the application user security context have Exchange administrative permissions.

Security-monitoring Features

None.

Deployment Criteria

Criteria Collaboration Data Objects for Exchange Management (CDOEXM)

Server Platform Requirements

CDOEXM can only be run on a computer on which the Exchange 2000 or Exchange 2003 administrative tools are installed. Both the computer running CDOEXM and the Exchange 2000 or Exchange 2003 server that is being accessed must be in the same Active Directory service organization. CDOEXM cannot be used with Exchange 2007.

Client Platform Requirements

CDOEXM can only be run on a computer on which the Exchange 2000 or Exchange 2003 administrative tools are installed. Both the computer running CDOEXM and the Exchange 2000 or Exchange 2003 server that is being accessed must be in the same Active Directory organization. CDOEXM cannot be used with Exchange 2007.

Deployment Methods

If the client or application that is being installed needs access to CDOEXM, the installer should verify that the computer contains the Exchange 2000 or Exchange 2003 administrative tools, and that CDOEXM is properly installed on the computer.

Deployment Notes

The CDOEXM version that ships with Exchange Server 2003 must be used when accessing Exchange Server 2003. The Exchange Server 2003 CDOEXM can also be used to access the Exchange 2000 Server. The CDOEXM library that ships with Exchange 2000 Server is not supported by accessing Exchange Server 2003. CDOEXM cannot be used with Exchange 2007.