如何从LegacyExchangeDN地址获取交换用户?

时间:2013-08-21 12:54:17

标签: c# outlook interop exchange-server

所以,我有一个活跃的会话和一个GAL。

我有一个交换地址: / o = My-Org / ou = Exchange管理组(FYDIBOHF23SPDLT)/ cn =收件人/ cn =我的名字

我希望从该地址获取地址条目(最终我正在尝试查找SMTP地址)。

我唯一能做的就是:

rcpAddress.Session.GetGlobalAddressList().AddressEntries[@"My Name"]

这给了我正确的地址,但这给了我同样的结果:

rcpAddress.Session.GetGlobalAddressList().AddressEntries[@"My Name"]
rcpAddress.Session.GetGlobalAddressList().AddressEntries[@"My Name gsdg"]
rcpAddress.Session.GetGlobalAddressList().AddressEntries[@"My Na"]

所以这看起来不像是一种很好的方法...... 我知道上面的excahnge地址是唯一的,我想从那里搜索条目。

我可以做一个恶心的解决方法并检查我的结果地址是否等于输入,但是如果有重复的结果会怎么样 - 我可能会得到错误的结果。

任何帮助?

1 个答案:

答案 0 :(得分:0)

如果您知道EX类型地址,则可以通过编程方式构造条目ID;它的格式记录在案。

abFlags[0]: 00
abFlags[1]: 00
abFlags[2]: 00
abFlags[3]: 00
muid: MUIDEMSAB
ulVersion: 0x00000001
ulType: 0x00000000 (DT_MAILUSER)
szAddr: /o=Swiftpage/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=0b3e51186fb04360b84f67d65c35e23a-SomeUser