Поделиться через


IAddrBook::Address

Область применения: Outlook 2013 | Outlook 2016

Отображает диалоговое окно адресной книги Outlook.

HRESULT Address(
  ULONG_PTR FAR * lpulUIParam,
  LPADRPARM lpAdrParms,
  LPADRLIST FAR * lppAdrList
);

Параметры

lpulUIParam

[вход, выход] Указатель на дескриптор родительского окна диалогового окна. Во входных данных всегда должен передаваться дескриптор окна. В выходных данных, если член ulFlags параметра lpAdrParms имеет значение DIALOG_SDI, возвращается дескриптор окна для немоделированного диалогового окна. См. раздел "Замечания".

lpAdrParms

[вход, выход] Указатель на структуру ADRPARM , которая управляет представлением и поведением диалогового окна адреса.

lppAdrList

[вход, выход] Указатель на указатель на структуру ADRLIST , содержащую сведения о получателе. Во входных данных этот параметр может иметь значение NULL или указывать на допустимый указатель. В выходных данных этот параметр указывает на указатель на допустимые сведения о получателе.

Возвращаемое значение

S_OK

Диалоговое окно "Общий адрес" было успешно отображено.

Замечания

Если член ulFlags параметра lpAdrParms имеет значение DIALOG_SDI предвидеть возвращение дескриптора окна в режиме вывода, он игнорируется в Outlook; Модальная версия диалогового окна всегда отображается в клиентах, отличных от Outlook.

Структура ADRLIST , переданная методом MAPI вызывающей стороне через параметр lppAdrList , содержит массив структур ADRENTRY , по одной структуре для каждого получателя. При передаче в метод IMessage::ModifyRecipients исходящего сообщения в параметре lpMods можно использовать структуру ADRLIST для обновления списка получателей.

Каждая структура ADRENTRY в структуре ADRLIST содержит ноль или несколько структур SPropValue , по одной структуре для каждого набора свойств для получателя. Структур SPropValue может не быть, если диалоговое окно, представленное методом Address , используется для удаления получателя. При наличии одной или нескольких структур SPropValue соответствующая структура ADRENTRY используется для добавления или обновления получателя. Получатель может быть разрешен, что указывает, что одна из структур SPropValue описывает свойство PR_ENTRYID получателя (PidTagEntryId) или не разрешено, что указывает на отсутствие свойства PR_ENTRYID .

В дополнение к PR_ENTRYID разрешенные получатели включают следующие свойства:

Структура ADRLIST , которую передает вызывающий объект, может отличаться от размера структуры, возвращаемой MAPI. Если MAPI должен возвращать большую структуру ADRLIST , она освобождает исходную структуру и выделяет новую. При выделении памяти для структуры ADRLIST выделите память для каждой структуры SPropValue отдельно. Дополнительные сведения о выделении и освобождении структур ADRLIST см. в разделе Управление памятью для ADRLIST и структур SRowSet.

Адрес возвращается немедленно, если флаг DIALOG_SDI задан в элементе ulFlags структуры ADRPARM в параметре lpAdrParms . Флаг DIALOG_SDI игнорируется для клиентов, отличных от Outlook. Если DIALOG_SDI игнорируется, отобразится модальная версия диалогового окна, а в lpulUIParam не следует ожидать указателя на дескриптор.

Адрес поддерживает символьные строки Юникода в структуре ADRPARM , если AB_UNICODEUI был указан в элементе ulFlagsADRPARM в параметре lpAdrParms и поддерживает строки символов Юникода в ADRLIST. Строки Юникода преобразуются в формат многобайтовой строки символов (MBCS), прежде чем они будут отображаться в диалоговом окне адресной книги Outlook.

Справочные материалы по MFCMAPI

Пример кода MFCMAPI указан в приведенной ниже таблице.

Файл Функция Comment
MAPIStoreFunctions.cpp
OpenOtherUsersMailboxFromGal
MFCMAPI использует метод Address , чтобы разрешить пользователю выбрать, какой почтовый ящик следует открыть.

См. также

ADRENTRY

ADRLIST

ADRPARM

FreePadrlist

FreeProws

IMAPITable::QueryRows

IMessage::ModifyRecipients

MAPIAllocateBuffer

MAPIAllocateMore

MAPIFreeBuffer

SPropValue

SRowSet

IAddrBook : IMAPIProp

MFCMAPI как пример кода

Mfcmapi (en) � �������� ������� ����