Question

I was wondering how I would go about programmatically access an Exchange Database file using c#. Any help would be awesome. Just looking for some pointers, like libraries and etc... I want to figure out the code on my own.

Would another language such as c++ be a better method?

Thanks a bunch to anyone who helps me :)

Was it helpful?

Solution

The .edb File


The .edb file is the main repository for the mailbox data. The fundamental construct of the .edb file is the b-tree structure, which is only present in this file, and not in the .stm file. The b-tree is designed for quick access to many pages at once. The .edb file design permits a top level node and many child nodes.

In a b-tree, each child node can have only a single parent. Although the typical b-tree allows unlimited depth, Microsoft restricts the depth of the b-trees in most of its applications to facilitate quick access by whatever engine happens to be working with it. By allowing for such a high spread and low tree depth, Exchange and ESE can guarantee that users can access any page of data, called a leaf node, within four I/Os.

Tree depth has the greatest effect on performance. A uniform tree depth across the entire structure, where every leaf node or data page is equidistant from the root node, means database performance is consistent and predictable. In this way, the ESE 4 KB pages are arranged into tables that form a large database file containing Exchange data.

The database is actually made up of multiple b-trees. These other ancillary trees hold indexing and views that work with the main tree.

The .edb file is accessed by ESE directly.

Here is a link to information on the ESE:

http://msdn.microsoft.com/en-us/library/5c485eff-4329-4dc1-aa45-fb66e6554792.aspx

I am able to connect to the database will built-in libraires in windows operating systems. Here is the reference:

http://msdn.microsoft.com/en-us/library/dn375980(v=exchg.10).aspx

To get a good understanding on how to connect I suggest that this might be a great reference too?

http://msdn.microsoft.com/en-us/library/gg294096(v=exchg.10).aspx

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top