Outlook 互操作:如何获取每个帐户的已删除邮件文件夹或垃圾箱文件夹
本文关键字:文件夹 删除 垃圾箱 何获取 互操作 获取 Outlook | 更新日期: 2023-09-27 18:36:25
我正在尝试获取Outlook中所有邮件帐户的所有已删除邮件或废纸篓文件夹。我在 C# 中使用 Outlook 互操作,但我只能找到在 MSDN 上的默认邮件帐户中获取已删除邮件文件夹的方法:Application.Session.GetDefaultFolder(OlDefaultFolders.olFolderDeletedItems)
。
有谁知道是否有办法在Outlook中的每个电子邮件帐户中获取已删除邮件文件夹?
遍历Namespace.Stores
集合并调用Store.GetDefaultFolder(olFolderDeletedItems)
而不是Namespace.GetDefaultFolder
。
为了响应您在对 Dmitry 的回答中添加的"应该在 Outlook 2007 上工作"要求,我建议采用以下方法:
- 使用
PropertyAccessor
获取商店的PR_IPM_WASTEBASKET_ENTRYID("http://schemas.microsoft.com/mapi/proptag/0x35E30102") - 使用
PropertyAccessor.BinaryToString
将其转换为可在 COM/互操作层中使用的条目 ID - 使用
NameSpace.GetItemFromID
访问已删除邮件文件夹文件夹,给定它的 EntryID 和存储的 EntryID。