首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AddressEntry对象是否有像索引号这样的属性来查找同名的人?

AddressEntry对象是否有像索引号这样的属性来查找同名的人?
EN

Stack Overflow用户
提问于 2019-10-07 13:22:30
回答 1查看 126关注 0票数 0

我正在读取全局交换通讯簿中的数据。

这适用于没有重复项的名称。

当我发现一个名字有很多次,我需要循环整个地址簿。

我宁愿尝试获得我正在寻找的名称的第一个索引。

例如,AddressEntry对象中的"Peter Name“,并使用此索引遍历下一个AddressEntries。

如果"Peter Name“的索引是"1",那么我就可以循环遍历,例如从条目2到条目10。

是否有AddressEntry对象的索引,还是需要重新考虑寻找同名的人?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-07 16:24:29

没有内在的索引属性,因为没有内在的排序顺序。有EntryID属性,但它不是索引,而是唯一的id。

如果您想处理所有重复的名称,循环遍历所有条目是个坏主意--有些GALs包含数万个条目,甚至可能根本不允许您遍历它们。

在Extended (C++或Delphi)中,您可以使用PR_ANR限制获取类似于在Outlook中解析重复名称时所显示的副本列表。但是,该功能不会在Outlook对象模型中公开。如果使用赎罪 (我是它的作者)是一个选项,您可以使用RDOAddressList.ResolveNameEx方法:

代码语言:javascript
复制
set Session = CreateObject("Redemption.RDOSession")
Session.MAPIOBJECT = Application.Session.MAPIOBJECT
set AdrrEntries = Session.AddressBook.GAL.ResolveNameEx("Peter Name")
for each AE in AdrrEntries
    MsgBox AE.Name
next
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58270483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档