This article describes the Microsoft support policy for customers who use third-party products that rely on unsupported methods to extract or modify the contents of a Microsoft Exchange database file. The purpose of this article is to demarcate the supportability boundaries for Exchange data that has been processed by such products.
Microsoft will continue to support Exchange installations where such products are used, but support of any data modified or extracted by such products is the responsibility of the vendor.
Some third-party applications use generic Extensible Storage Engine (ESE) application programming interfaces (APIs) or reverse engineer database schema and semantics in order to extract data from or to modify Exchange database files. ESE refers generically to any of the several versions of the Extensible Storage Engine. ESE is a database engine that is used by several Microsoft products. One version of ESE, called ESENT, is the database engine that is used by several services in Microsoft Windows. These services include the Active Directory service. ESENT is the only version of ESE for which Microsoft publishes APIs for third-party developers. For more information about these APIs, visit the following Microsoft Web site: http://msdn2.microsoft.com/en-us/library/ms684493.aspx
The version of ESE that is used by Exchange differs significantly from ESENT. Microsoft does not publish APIs for the Exchange version of ESE. Additionally, Microsoft does not recommend the use of ESENT APIs with an Exchange database. The use of ESENT APIs with an Exchange database may cause irreversible damage that makes the database incompatible with the version of ESE that is used by Exchange. The only mode of access through published ESENT APIs that is guaranteed not to make any changes to the database is Read Only access into a Clean Shutdown state database.
Each application that uses ESE devises its own schema and data organization. The application schema is not known to ESE and is not controlled by ESE APIs. Even if you use the ESE APIs correctly, you can logically corrupt a database if you do not fully understand the application schema and semantics.
If a third-party product extracts or modifies data in an Exchange database or in Exchange transaction log files without using the supported interfaces described below, then that data must be supported by the vendor. Microsoft makes no representations regarding the reliability or integrity of the data.
Microsoft-supported interfaces for extracting data from or modifying an Exchange database are the following:
- Client protocols and APIs that interact with the Microsoft Exchange Information Store process. These protocols include MAPI, POP3, Internet Message Access Protocol (IMAP), Collaboration Data Objects (CDO), WebDAV and the Microsoft online streaming backup and VSS backup APIs.
- Utilities created by Microsoft for the purpose of analyzing, repairing or recovering an Exchange database, such as Eseutil.exe and Isinteg.exe.
For more information about supported protocols and APIs, visit the following Microsoft Web site: http://msdn2.microsoft.com/en-us/library/ms876253.aspx
If an Exchange database is damaged by the use of products that rely on unsupported methods of extracting data from or modifying an Exchange database, Microsoft Product Support Services will assist customers in salvaging the database with supported utilities such as Eseutil.exe, Isinteg.exe and the Move Mailbox facility in Exchange System Manager. Microsoft cannot guarantee that these efforts will be successful in recovering any data. Microsoft Product Support Services does not provide data salvage services that require direct manipulation of the database files without using the supported interfaces listed above.
Damaged databases may exhibit a range of symptoms including random Information Store crashes or hangs, excessive CPU utilization or failures in replication or other database functions.
As long as no changes are made to the Exchange database files, extraction of data using unsupported methods does not pose a risk of damaging the database.
Microsoft does not support re-importation of data to an Exchange database if the information was previously extracted by using unsupported methods. This applies even if you use supported methods of re-importation. If you import such data, future support of the data in that database is the responsibility of the vendor.