1

这是一个研究项目,我想做的是能够打开一个 MS Exchange EDB(2003 到 2016)文件并读取表格和数据。

项目的第一部分是打开edb文件并确定里面的邮箱。

该项目的第二部分是然后阅读选定邮箱中的单个消息。

我正在为该项目使用 Visual Studio。

我知道 EDB 文件是一个 b-tree 数据库(又名 Jet Blue),但我发现关于此事的文档很少。

一些搜索讨论了一个名为LIBESEDB的 Linux 库,但该项目在 sourceforge 上丢失,但在 GitHub 上有一个新位置。

谁能指出我的网址。任何示例代码或库都更好。

4

1 回答 1

2

这将是一个挑战。从 2003 年到 2016 年,Exchange 存储架构已经更改了几次。从发布到发布的大量 I/O 减少是通过更改架构来实现的。

您可以使用 codeplex 中的 ManagedEsent。http://managedesent.codeplex.com。( ese.dllfor Exchange) 和esent.dll(for Windows) 非常相似,它们可以读取彼此的数据库文件。不要它来写作!它们的实现有足够的差异,您可能会得到微妙的损坏。

如果 C/C++ 更符合您的风格:https ://msdn.microsoft.com/en-us/library/gg269259(v=exchg.10).aspx 。同样, and 之间有一些细微的区别ese.dllesent.dll并且ese.dll没有任何文档,但对于只读目的,你应该没问题。

-马丁

于 2017-03-30T16:12:04.110 回答