获取当前用户所属全部通讯组列表的相关信息
此代码示例使用 GetMemberOfList() 方法,获取当前用户所属全部通讯组列表的相关信息。
示例
注意
下面的代码示例摘录自 Microsoft Office Outlook 2007 应用程序编程。
在下面的代码示例中,GetCurrentUserMembership 调用 GetMemberOfList 方法,以获取 Exchange 用户所属全部通讯组列表的 AddressEntries 集合。 如果用户不属于任何通讯组列表,GetMemberOfList 返回计数为零的 AddressEntries 集合。 用户必须处于联机状态,这样 GetMemberOfList 才能返回 AddressEntries 集合;否则,GetMemberOfList 返回空引用。 为了测试用户是否联机,GetCurrentUserMembership 使用返回当前 ExchangeUser 对象的 GetExchangeUser() 方法。 获取地址条目后,此代码示例将用户所属全部通讯组列表的相关信息写入 Listeners 集合的跟踪侦听器中。
如果使用 Visual Studio 测试此代码示例,必须先添加对 Microsoft Outlook 15.0 对象库组件的引用,并在导入 Microsoft.Office.Interop.Outlook 命名空间时指定 Outlook 变量。 不得将 using 语句直接添加到此代码示例中的函数前面,这个语句必须后跟公共类声明。 下面的代码行演示了如何在 C# 中执行导入和分配。
using Outlook = Microsoft.Office.Interop.Outlook;
private void GetCurrentUserMembership()
{
Outlook.AddressEntry currentUser =
Application.Session.CurrentUser.AddressEntry;
if (currentUser.Type == "EX")
{
Outlook.ExchangeUser exchUser =
currentUser.GetExchangeUser();
if (exchUser != null)
{
Outlook.AddressEntries addrEntries =
exchUser.GetMemberOfList();
if (addrEntries != null)
{
foreach (Outlook.AddressEntry addrEntry
in addrEntries)
{
Debug.WriteLine(addrEntry.Name);
}
}
}
}
}