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.aspxThe
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.aspxIf
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.