Получение сведений обо всех списках рассылки, участником которых является текущий пользователь
В этом примере используется метод GetMemberOfList() для получения сведений обо всех списках рассылки, участником которых является текущий пользователь.
Пример
Примечание.
Приведенный ниже пример кода взят из книги Программирование приложений для Microsoft Office Outlook 2007.
В приведенном ниже примере GetCurrentUserMembership вызывает метод GetMemberOfList, чтобы получить коллекцию AddressEntries для всех списков рассылки, в которые входит пользователь Exchange. Если пользователь не является участником списков рассылки, GetMemberOfList возвращает коллекцию AddressEntries с количеством, равным нулю. Чтобы метод GetMemberOfList вернул коллекцию AddressEntries, вошедший в систему пользователь должен присутствовать, в противном случае GetMemberOfList возвращает пустую ссылку (NULL). GetCurrentUserMembership использует метод GetExchangeUser(), который возвращает текущий объект ExchangeUser, чтобы определить, присутствует ли пользователь. Если записи адресов получены, в примере записываются сведения о каждом списке рассылки пользователя в прослушиватели трассировки коллекции Listeners.
Если вы используете Visual Studio для тестирования этого примера кода, сначала добавьте ссылку на компонент Microsoft Outlook 15.0 Object Library и задайте переменную Outlook при импорте пространства имен Microsoft.Office.Interop.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);
}
}
}
}
}