C# 从Windows搜索索引URL将NameSpace.GetItemFromID与Outlook EntryID一起使用时出错
当我从Windows搜索索引电子邮件项目中提取EntryID时,一些EntryID总是以零开头,例如 00000000 5559804AB84A6E49A3EBDF11D66E111724A33D00 00000000 5559804AB84A6E49A3EBDF11D66E11174A03D00 我可以将entryID作为单个参数提供给call NameSpace.GetEntryFromID,并打开邮件项 其中EntryID不以零开头,例如 EF0000005DF0733903ACFB4A90E9F84DF839CED8A42D5300 EF0000005DF0733903ACFB4A90E9F84DF839CED824E75200C# 从Windows搜索索引URL将NameSpace.GetItemFromID与Outlook EntryID一起使用时出错,c#,outlook,mapi,mailitem,C#,Outlook,Mapi,Mailitem,当我从Windows搜索索引电子邮件项目中提取EntryID时,一些EntryID总是以零开头,例如 00000000 5559804AB84A6E49A3EBDF11D66E111724A33D00 00000000 5559804AB84A6E49A3EBDF11D66E11174A03D00 我可以将entryID作为单个参数提供给call NameSpace.GetEntryFromID,并打开邮件项 其中EntryID不以零开头,例如 EF0000005DF0733903ACFB4A9
这些电子邮件来自不同的邮箱,使用这些字符串作为单个参数调用NameSpace.GetEntryFromID会出现Message Not Found错误,可能是因为不同邮箱的StoreID不是默认值。我是否可以从Windows搜索URL返回的EntryID字符串中提取StoreID,作为GetEntryFromID的第二个参数传递 我想问题的原因不是商店ID。每个商店都有自己的ID。即使尝试在Outlook中的商店之间移动项目,EntryID属性值也可以更改。以下是MSDN为EntryID属性声明的内容: MAPI存储提供程序在其存储中创建项时会分配唯一的ID字符串。因此,在保存或发送Microsoft Outlook项目之前,不会为其设置EntryID属性。当项目移动到另一个存储区时,例如,从收件箱移动到Microsoft Exchange Server公用文件夹,或从一个个人文件夹(.pst)文件移动到另一个.pst文件,EntryID会发生更改 无论如何,如果不指定StoreID,GetItemFromID将搜索默认的消息存储 我是否可以从Windows搜索URL返回的EntryID字符串中提取StoreID,作为GetEntryFromID的第二个参数传递 没有。相反,您可以获取由Folder类表示的对象并使用属性