【问题标题】:MAPI: Most efficient way to iterate through all the folders and items in a mailboxMAPI:遍历邮箱中所有文件夹和项目的最有效方法
【发布时间】:2022-04-03 02:05:08
【问题描述】:

我正在尝试为 Exchange 邮箱中的项目编制索引,因此:使用 MAPI 和/或兑换数据对象 (RDO) 遍历 Exchange 邮箱中所有文件夹和项目的最有效方法是什么?

我知道 RDOFolder.GetAllChildFolders(和 IMAPIContainer::GetHierarchyTable)可以为我提供所有文件夹(可能以最有效的方式)但是文件夹中的项目呢?

【问题讨论】:

    标签: performance exchange-server mapi outlook-redemption


    【解决方案1】:

    你打算如何处理这些物品?如果您只是想读取一些属性,Redemption 中的 MAPI 表 (http://www.dimastr.com/redemption/mapitable.htm)(我是它的作者)是不错的选择,RDOFolder.Items.MAPITable.ExecSQL 可能是最容易检索数据的方法。 如果您需要检索大字符串或二进制属性、附件或修改数据,您别无选择,只能单独打开每个项目。

    【讨论】:

    • 我要读取以下属性 PR_LONGTERM_ENTRYID_FROM_TABLE、PR_ENTRYID、PR_STORE_ENTRYID、PR_NORMALIZED_SUBJECT_W、PR_MESSAGE_SIZE、PR_LAST_MODIFICATION_TIME、PR_CREATION_TIME
    • 我可以做 1 RDOFolder.Items.MAPITable.ExecSQL 给我邮箱里的所有项目吗?
    • 是的,你可以这样做。
    猜你喜欢
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多