如何从 Active Directory 获取联系人的 ItemId 或 AttachmentId(照片)? Exchange 网络服务 2007

How to get ItemId or AttachmentId (photo) of a contact from Active Directory? Exchange web services 2007

我的任务是在 Outlook 中获取用户的联系人照片。我们使用 EWS soap API 交换 2007 版本。

我发现了如果我知道联系人的 ItemId(调用 GetItem,然后调用 GetAttachment)如何获取照片。但是当我将 ResolveNames 操作与 Active Directory 搜索范围一起使用时,它会给我一些信息,机器人既没有与照片相关的数据 (AttachmentId),也没有联系人的 ItemId。我认为那是因为我使用 Active Directory 范围,因为如果我使用帐户的联系人作为搜索范围,那么 ItemId 会正确显示。也许只有帐户联系人列表中的项目有一个 Id(我的猜测)。但无论如何,我必须使用 Active Directory 范围来搜索公司的所有联系人。除了解析名称,我不知道从 Active Directory 获取联系信息的任何其他方法。

所以基本上我需要找到一种方法来使用 ItemId(在 GetItem 操作中使用它)或附件的 AttachmentId(在 GetAttachment 操作中使用以获取图像文件)从 Active Directory 获取联系人。

存储在邮箱中的联系人与 GAL 对象无关。联系人使用项目作为存储 - 它们本质上是具有不同消息的消息 class(IPM.ContactIPM.Mpte)。

GAL 对象不将图片存储为单独的附件,它们只是二进制属性,与其他属性(例如显示名称字符串 属性)没有任何区别。