检索MailItem的StoreID(在Outlook选择中)

时间:2012-05-14 11:55:46

标签: c# c#-4.0 outlook vsto outlook-2003

我需要遍历MailItem中的Selection项并阅读其EntryIDStoreID值,以便以后能够再次检索邮件项目(通过赎回进行后台处理)。有没有办法直接检索StoreID的{​​{1}}?

我知道可以通过其父MailItem的{​​{1}}属性检索它;但是,这似乎效率很低,因为它必须为每个项目的父文件夹实例化(和释放)COM对象。有没有更有效的方法来实现这一目标?

修改:我无法使用Selection.Parent属性,因为它仅在Outlook 2007中引入,我需要支持Outlook 2003.此外,Sue Mosher声明:

  

StoreID的{​​{1}}对象为Folder,因此您可以使用Parent

但是,如果在“所有Outlook项目”中执行搜索,则Selection似乎始终指向主存储中的搜索文件夹,该文件夹通常是Exchange邮箱:

Explorer

由于搜索可能与其他商店中的商品相匹配,因此Selection.Parent.CurrentFolder.Store不一定与所选商品的商店相对应,因此这种方法不可靠。

1 个答案:

答案 0 :(得分:1)

您是否可以使用Selection.Parent获取父级一次,而不是获取每个项目的父级?