.net - 如何尽快获得 Outlook DistributionList 的成员?
问题描述
我需要获取 Outlook 分发列表成员的电子邮件地址。此列表不在我的本地文件夹中,它是公司范围的列表。
我有一个解决方案,但它需要大量时间,因为在处理该组的成员之前,我会遍历所有现有组 (8,400+) 以找到有问题的组。
如果我已经知道分发列表的名称(也不需要获取所有其他 8,400 多个分发列表),是否有更好的方法来获取分发列表的成员?
这是我的代码:
outlookApp = New Outlook.Application
outlookNamespace = _outlookApp.GetNamespace("mapi")
Dim addrLists As Outlook.AddressLists =
outlookApp.Session.AddressLists
Dim root As Outlook.AddressList =
addrLists.OfType(Of Outlook.AddressList) _
.FirstOrDefault(Function(x) x.Name = "All Groups")
Dim entry As Outlook.AddressEntry =
root.AddressEntries.Cast(Of Outlook.AddressEntry) _
.FirstOrDefault(Function(x) x.Name = "<Enter Group Name Here>")
entry.Members
包含此列表的所有成员。
我尝试使用该功能GetAddressEntryFromID
,但只收到错误消息“不幸发生了问题。您可以再试一次。” (从德语翻译)。
解决方案
它比这简单得多:
set allGroups = Application.Session.AddressLists.Item("All Groups")
set addressEntry = allGroups.AddressEntries.Item("<Enter Group Name Here>")
for each m in addressEntry.Members
MsgBox m.Name
next
推荐阅读
- c++ - 无法使用 MSVC/Clang 在 Windows 上将 SDL2 与 CMake 链接
- arrays - C - 写入和读取动态数组
- node.js - 如何将 puppeteer 与无浏览器和代理一起使用
- anylogic - AnyLogic中“代理”类型参数的访问值
- git - 有没有办法使用逻辑 AND 在 GitHub 操作中组合推送标准?
- r - R - 根据条件启动和重置 R 中的计数列
- python - Jupyter 不会从 Windows10 上的 Anaconda3 启动
- python - Anaconda 应用程序未在我的 PC 中打开
- c - 如何用 C 制作交互式菜单?
- javascript - 来自 momentjs 的函数 fromNow() 和 toNow() 无法按预期工作