Microsoft KB Archive/813349

From BetaArchive Wiki
Knowledge Base


Support policy for Microsoft Exchange APIs with the .NET Framework applications

Article ID: 813349

Article Last Modified on 10/25/2007



APPLIES TO

  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • Microsoft Exchange Server 5.5 Standard Edition
  • Microsoft Collaboration Data Objects 2.0
  • Microsoft Collaboration Data Objects 1.2
  • Microsoft Collaboration Data Objects 1.21
  • Collaboration Data Objects for Exchange 2000
  • Microsoft Collaboration Data Objects 2.0 for NT Server
  • Microsoft Messaging Application Programming Interface




SUMMARY

This article outlines the support policy for using various Exchange application programming interfaces in a Microsoft .NET Framework application. This article applies to all versions and service packs of both Microsoft Exchange Server 5.5 and Microsoft Exchange 2000 Server.

Microsoft is committed to providing the ability to programmatically access Exchange 2000 Server by using the latest available .NET technologies. If you build a .NET Framework application, the supported options for accessing Exchange data are:

  • WWW Distributed Authoring and Versioning (WebDAV) through HTTP requests and responses.
  • Collaboration Data Objects (CDO) for Exchange 2000 Server (CDOEX) and Exchange OLE DB provider (ExOLEDB) through an interop assembly.
  • Windows Management Instrumentation (WMI).
  • Collaboration Data Objects for Exchange Management (CDOEXM).

If the .NET application assemblies reside directly on the Exchange server, Microsoft recommends building the application by using CDOEX and ExOLEDB. If the .NET application assemblies do not reside directly on the Exchange Server, Microsoft recommends using WebDAV.

For .NET Framework applications that send mail without using Exchange Server as the transport, Microsoft CDO for Windows 2000 (CDOSYS) can be used through an interop assembly. However, Microsoft recommends using System.Web.Mail. System.Web.Mail is a managed wrapper to CDOSYS that enables you to construct and send messages by using the CDOSYS message component. The mail message is delivered either through the SMTP mail service that is built into Microsoft Windows 2000 or through an arbitrary SMTP server.

CDO 1.2x and MAPI are not supported in a .NET Framework environment. For CDO 1.2x and MAPI type functionality, use one of the supported access methods mentioned in the "Summary" section. For .NET Framework applications that must send mail without using Exchange Server as the transport, System.Web.Mail is a good option. However, Microsoft Collaboration CDOSYS can also be used through an interop assembly.

CDO 1.2x and MAPI are not supported in a .NET Framework environment.

MORE INFORMATION

Microsoft is committed to improving the .NET Framework environment and to making access to Exchange data from within that environment even easier. The supportability status of some of these components may change without notice.

The following table summarizes the support policy for Exchange APIs in a .NET environment:

API DLL Name Managed Code Support Policy
System.Web.Mail Supported
WebDAV Supported
WMI Supported
CDOSYS CDOSYS.DLL Supported, but System.Web.Mail is recommended
CDOEXM CDOEXM.DLL Supported by using a COM interop assembly
EXOLEDB Supported by using a COM interop assembly
CDOEX CDOEX.DLL Supported by using a COM interop assembly
CDO 1.2x CDO.DLL Not Supported
CDONTS CDONTS.DLL Not Supported
MAPI MAPI32.DLL Not Supported
ESE Backup API ESEBCLI2.DLL Not Supported

Note All of the components that are listed in the table are fully supported in unmanaged Visual C++.

REFERENCES

For more information, visit the following MSDN Web sites:

.NET Interop: Get Ready for Microsoft .NET by Using Wrappers to Interact with COM-based Applications
http://msdn.microsoft.com/msdnmag/issues/01/08/interop/

Introduction to COM Interop
http://msdn2.microsoft.com/en-us/library/kew41ycz(vs.71).aspx

COM Interop Sample: .NET Client and COM Server
http://msdn2.microsoft.com/en-us/library/367d22wa(vs.71).aspx

Advanced COM Interop
http://msdn2.microsoft.com/en-us/library/bd9cdfyx(vs.71).aspx

Handling COM Interop Exceptions
http://msdn2.microsoft.com/en-us/library/awy7adbx(vs.71).aspx

Keywords: kbhowto KB813349