Outlook Addin / VSTO - 对于给定的计数,StoreID始终是相同的,无论子文件夹是什么?

时间:2014-04-23 13:15:13

标签: c# outlook vsto add-in

新手到c#

我为outlook继承了一个c#vsto addin,在代码中有一个方法可以通过entryid搜索mailitem。我们还传入NULL或特定文件夹来搜索mailitem。

注意:对于此插件,在生产服务器上,Outlook邮件客户端可以访问其他几个电子邮件帐户,而不仅仅是运行Outlook的用户..

如果我们为foldertype传入NULL static Outlook.MailItem FindMailitemByClientandEntryID(int argClientID,string argEntryID,string folderType)

我们构建了一个循环的文件夹数组

        if (folderType == null)
        {
            theFolderTypes = new string[] {"ToBePrinted", "ClaimsCompleted", "Automated", "AutomatedPendingPrelog", "AutomatedPendingSplit", "AutomatedRejected" };
        }
        else
        {
            theFolderTypes = new string[1];
            theFolderTypes[0] = folderType;
        }

然后我们遍历数组中的每个文件夹名称并获取文件夹路径和StoreID,然后尝试使用GetItemFromID找到mailitem

我们正在记录几乎所有内容,包括查找storeid的结果,并发现无论子文件夹是什么(对于特定的文件),storeid都是相同的。

是正常的吗?

我希望每个子文件夹获得不同的值 收件箱     文件控制          自动化                待印刷                声明已完成

这可能是原始程序员注意到第二行的原因,因为它并不重要。

theItem = Globals.ThisAddIn.Application.Session.GetItemFromID(argEntryID, null);
//theItem = Globals.ThisAddIn.Application.Session.GetItemFromID(argEntryID, theClientStoreID);

提前致谢 克里斯

1 个答案:

答案 0 :(得分:0)

是的,StoreId对于一个邮件存储的所有文件夹都是相同的。

  

每个文件夹都有一个名为Folder.StoreID的ID字段,其值对于特定邮件存储中的所有文件夹都是相同的。每个文件夹还具有唯一的条目ID字段。   Source

如果我没记错的话,邮件存储就是邮箱,或者是PST文件。