使用 Outlook API 访问特定文件夹

Posted

技术标签:

【中文标题】使用 Outlook API 访问特定文件夹【英文标题】:Using Outlook API to get to a specific folder 【发布时间】:2010-09-09 18:28:44 【问题描述】:

我正在尝试编写一些 C# 代码来访问 Outlook 邮箱中的特定文件夹。我有以下代码:

Outlook.Application oApp = new Outlook.Application();
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
Outlook.Recipient oRecip = oNS.CreateRecipient("AccountNameHere");
oRecip.Resolve();
if (oRecip.Resolved)

  oInbox = oNS.GetSharedDefaultFolder(oRecip, Outlook.OlDefaultFolders.olFolderInbox);
  oInboxMsgs = oInbox.Items;
  ItemCount = oInboxMsgs.Count;
  Console.Writeline("There are 0] items.", ItemCount.ToString())

这将使我进入“收件箱”文件夹。我正在尝试访问与收件箱文件夹处于同一级别的文件夹。我相信我需要使用 GetFolderFromID 而不是 GetSharedDefaultFolder,但我不明白如何使用它。有没有办法遍历所有***文件夹?如何确定文件夹的 EntryID 和 StoreID?

谢谢!

【问题讨论】:

【参考方案1】:

您可以使用 Outlook.NameSpace 对象的 Folders 集合成员。这样您就可以遍历集合并通过其名称找到您的文件夹。如果您仍想使用 GetFolderFromID,可以使用OutlookSpy 工具获取 EntryID 和 StoreID 值。

【讨论】:

以上是关于使用 Outlook API 访问特定文件夹的主要内容,如果未能解决你的问题,请参考以下文章

使用列表邮件时,Outlook 邮件 API 返回拼写检查类名称作为 html 响应的一部分

如何使用 Excel VBA 打开 Outlook excel 附件,在特定时间范围内发送到特定 Outlook 文件夹?

使用 VBA 访问 Outlook 中的文件夹

使用 Ms Graph Api 将附件文件从 Outlook 复制到 onedrive,无需下载

如何使用“ OpenFileDialog”选择文件夹保存Outlook消息

Outlook - 从带有 .xls 附件的电子邮件和特定发件人中保存文件,然后将电子邮件移动到子文件夹