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


OpenIMsgSession

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

Создает и открывает сеанс сообщений, который группит созданные в нем сообщения.

Свойство Значение
Файл заголовка:
Imessage.h
Реализовано в:
MAPI
Вызывающая сторона:
Клиентские приложения и поставщики услуг
SCODE OpenIMsgSession(
  LPMALLOC lpMalloc,
  ULONG ulFlags,
  LPMSGSESS FAR * lppMsgSess
);

Параметры

lpMalloc

[в] Указатель на объект распределителя памяти, предоставляющий интерфейс OLE IMalloc . MAPI должен использовать этот метод выделения при работе с интерфейсом OLE IStorage .

ulFlags

[in] ���������������; ������ ���� ����� ����.

lppMsgSess

[out] Указатель на указатель на возвращенный объект сеанса сообщения.

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

S_OK

Сеанс открыт.

MAPI_E_INVALID_PARAMETER

lpMalloc или lppMsgSess имеет значение NULL.

MAPI_E_INVALID_FLAGS

Были переданы недопустимые флаги.

MAPI_UNICODE

При вызове этой функции клиент или поставщик услуг устанавливает флаг MAPI_UNICODE для создания файлов в Юникоде .msg. Результирующий файл Imessage отображает STORE_UNICODE_OK в PR_STORE_SUPPORT_MASK и поддерживает свойства Юникода.

Замечания

Сеанс сообщений используется клиентскими приложениями и поставщиками служб, которые хотят работать с несколькими связанными объектами MAPI IMessage: IMAPIProp , созданными на основе базовых объектов OLE IStorage . Клиент или поставщик использует функции OpenIMsgSession и CloseIMsgSession для переноса создания таких сообщений в сеанс сообщений. После открытия сеанса сообщений клиент или поставщик передает на него указатель в вызове OpenIMsgOnIStg, чтобы создать новый объект IMessage-on-IStorage.

Сеанс сообщений отслеживает все объекты IMessage-on-IStorage, созданные во время сеанса, а также все вложения и другие свойства сообщений. Когда клиент или поставщик вызывает CloseIMsgSession, он закрывает все эти объекты. Вызов CloseIMsgSession — единственный способ закрыть объекты IMessage-on-IStorage.

OpenIMsgSession используется клиентами и поставщиками, которым требуется возможность обрабатывать несколько связанных сообщений в виде объектов OLE IStorage . Если одновременно должно быть открыто только одно такое сообщение, нет необходимости отслеживать несколько сообщений и нет причин для создания сеанса сообщений с openIMsgSession.

Так как он работает с базовым объектом OLE, MAPI необходимо использовать выделение памяти OLE. Дополнительные сведения об объектах структурированного хранилища OLE и выделении памяти OLE см. в разделе OLE и передача данных.