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


MAPIAllocateMore

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

Выделяет буфер памяти, связанный с другим буфером, ранее выделенным с помощью функции MAPIAllocateBuffer .

Свойство Значение
Файл заголовка:
Mapix.h
Реализовано в:
MAPI
Вызывающая сторона:
Клиентские приложения и поставщики услуг
SCODE MAPIAllocateMore(
  ULONG cbSize,
  LPVOID lpObject,
  LPVOID FAR * lppBuffer
);

Параметры

cbSize

[в] Размер нового выделенного буфера (в байтах).

lpObject

[в] Указатель на существующий буфер MAPI, выделенный с помощью MAPIAllocateBuffer.

lppBuffer

[out] Указатель на возвращенный, только что выделенный буфер.

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

S_OK

Вызов выполнен успешно и вернул указатель на запрошенную память.

Замечания

Во время обработки вызова MAPIAllocateMore реализация вызова получает блок памяти из операционной системы. Буфер памяти выделяется по четным байт-адресам. На платформах, где более эффективен длинный целый доступ, операционная система выделяет буфер по адресу, размер которого в байтах кратен четырем.

Единственный способ освободить буфер, выделенный с помощью MAPIAllocateMore , — передать указатель буфера, указанный в параметре lpObject , в функцию MAPIFreeBuffer . Связь между буферами памяти, выделенными с помощью MAPIAllocateBuffer и MAPIAllocateMore , позволяет MAPIFreeBuffer освободить оба буфера одним вызовом.