CDOSYS Evaluation Criteria

Topic Last Modified: 2008-09-03

This topic provides information about how to use Collaboration Data Objects for Windows 2000 (CDOSYS) to develop messaging applications.

Collaboration Data Objects (CDO) for Microsoft Windows 2000 (Cdosys.dll), which implements the 2.0 version of the Collaboration Data Objects API specification, is a Component Object Model (COM) component designed to simplify the writing of programs that create or manipulate Internet messages. CDOSYS is one in a suite of collaborative COM components referred to collectively as CDO. CDOSYS is an integral part of the Windows 2000 series of operating systems. (The protocol events portion of this technology is described separately.)

Caveats

Functional Criteria

Criteria Collaboration Data Objects for Windows 2000 (CDOSYS)

Application Domain

CDOSYS is used in applications that create and send messages by using the SMTP and NNTP protocols, and by creating ASP applications with messaging capabilities. CDOSYS also includes transport event sinks, which is described separately.

Major Objects

CDOSYS provides COM/Automation-compatible classes that represent messages and their parts: Messages, Message, BodyPart, BodyParts, Configuration, and DropDirectory. CDOSYS also defines the COM interfaces that SMTP and NNTP protocol events must implement to function properly.

Data access model

Mixed: Collections of messages and body parts are presented as ADO row sets, while individual messages are represented as a collection of body part objects.

Threading Models

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

Application Architectures

Commonly used for client-side Windows applications that use simple e-mail and NNTP messaging and for ASP-based applications that require simple messaging capabilities.

Remote Usage

CDOSYS is installed with Windows, and sends e-mail messages by using standard network protocols. Applications that run on an Exchange Server typically use CDO for Exchange Server.

Transactions

No.

Management Capabilities

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

Availability

Currently, shipping in all versions of Microsoft Windows 2000, Windows XP, and Windows Server 2003. No changes are anticipated at this time.

Development Criteria

Criteria Collaboration Data Objects for Windows 2000 (CDOSYS)

Languages and Tools

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

Managed Implementation

CDOSYS is an unmanaged component. The use of CDO for Windows 2000 is supported under the COM Interoperability layer of Visual Studio .NET and the .NET Framework, but System.Web.Mail is recommended for sending e-mail messages in a managed code environment.

Scriptable

CDOSYS is scriptable by means of ASP and the Windows Scripting Host.

Test/Debug tools

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

Expert Availability

Beginning developers can easily use CDOSYS, and many Microsoft and third-party Web sites and communities are also available.

Available Information

CDOSYS is covered in several Microsoft and third-party books. For more information about CDOSYS, see About CDO for Windows 2000 on MSDN.

Developer/Deployment Licensing

No special licenses are needed for using CDOSYS. Depending on your configuration, your systems may require access to an additional SMTP/NNTP server to transport messages to their destination.

Security Criteria

Criteria Collaboration Data Objects for Windows 2000 (CDOSYS)

Design-time Permissions

No special developer permissions are required to use CDOSYS. However, the developer might need debug applications permission when troubleshooting the application. When creating applications that send e-mail, the developer will require either write access to the pickup directory, or read access to the IIS metabase, so that the application can determine the SMTP port used for sending e-mail messages.

Setup Permissions

No special permissions are needed to install applications that use CDOSYS beyond those needed when installing applications of a similar architecture. If the Setup program makes configuration changes to a local SMTP or NNTP service, the user must have sufficient permissions to make those changes.

Run-time Permissions

No special permissions are required to run interactive applications or ASP pages to enable the use of CDOSYS. In applications that use the SMTP or NNTP drop directory, the application or user must have permission to write to that directory. When running an application that sends e-mail, the user will require either write access to the pick-up directory, or read access to the IIS metabase, so the application can determine the SMTP port used for sending mail.

Built-in Security Features

CDOSYS uses the underlying Microsoft Windows 2000 (or Windows Server 2003) security features.

Security Monitoring Features

None.

Deployment Criteria

Criteria Collaboration Data Objects for Windows 2000 (CDOSYS)

Server Platform Requirements

CDOSYS is available on Windows 2000, Windows XP, and Windows Server 2003. CDOSYS requires access to an SMTP or NNTP server to transfer the messages it creates. If this is a local IIS service, the application must be able to determine the local pickup directory or the SMTP port of the local service.

Client Platform Requirements

CDOSYS is available on Windows 2000, Windows XP, and Windows Server 2003.

Deployment Methods

There are no special requirements for application installation, beyond verification that the computer is running one of the operating systems that include CDOSYS.

Deployment Notes

On systems where Exchange 2000 or Exchange 2003 is installed, the CDOSYS components are replaced by CDO for Exchange 2000 Server (CDOEX), which provides additional functionality over CDOSYS. CDOEX is described separately.