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


BuildDisplayTable

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

Создает таблицу отображения на основе данных страницы свойств, содержащихся в одной или нескольких структурах DTPAGE .

Свойство Значение
Файл заголовка:
Mapiutil.h
Реализовано в:
MAPI
Вызывающая сторона:
Поставщики услуг
STDAPI BuildDisplayTable(
  LPALLOCATEBUFFER lpAllocateBuffer,
  LPALLOCATEMORE lpAllocateMore,
  LPFREEBUFFER lpFreeBuffer,
  LPMALLOC lpMalloc,
  HINSTANCE hInstance,
  UINT cPages,
  LPDTPAGE lpPage,
  ULONG ulFlags,
  LPMAPITABLE * lppTable,
  LPTABLEDATA * lppTblData
);

Параметры

lpAllocateBuffer

[в] Указатель на функцию MAPIAllocateBuffer , используемую для выделения памяти.

lpAllocateMore

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

lpFreeBuffer

[в] Указатель на функцию MAPIFreeBuffer , которая будет использоваться для освобождения памяти.

lpMalloc

Неиспользуемые; значение должно иметь значение NULL.

hInstance

[в] Экземпляр объекта MAPI, из которого BuildDisplayTable извлекает ресурсы.

cPages

[в] Количество структур DTPAGE в массиве, на который указывает параметр lpPage .

lpPage

[в] Указатель на массив структур DTPAGE , содержащих сведения о страницах таблицы отображения для построения.

ulFlags

[в] Битовая маска флагов. Можно задать следующий флаг:

MAPI_UNICODE

Переданные строки имеют формат Юникода. Если флаг MAPI_UNICODE не задан, строки имеют формат ANSI.

lppTable

[out] Указатель на указатель на таблицу отображения, которая предоставляет интерфейс IMAPITable .

lppTblData

[вход, выход] Указатель на указатель на объект данных таблицы, предоставляющий интерфейс ITableData в таблице, возвращенной в параметре lppTable . Если объект табличных данных не требуется, для lppTblData следует задать значение NULL, а не значение указателя.

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

Нет

Замечания

MAPI использует функции, на которые указывают lpAllocateBuffer, lpAllocateMore и lpFreeBuffer , для выделения памяти и освобождения, в частности для выделения памяти для использования клиентскими приложениями при вызове интерфейсов объектов, таких как IMAPIProps::GetProps и IMAPITable::QueryRows.

Примечания для вызывающих методов

Из ресурса диалогового окна считывается все возможное, в том числе:

  • Заголовок страницы, то есть элемент ulbLpszLabel структуры DTBLPAGE , считываемый из заголовка диалогового окна в ресурсе.

  • Все заголовки элементов управления, то есть элементы ulbLpszLabel других структур элементов управления считываются из текста элемента управления в ресурсе.

BuildDisplayTable перезаписывает все передаваемые во входных структурах управления сведениями из ресурса диалогового окна. Это означает, что вызывающий объект BuildDisplayTable не может динамически указывать заголовки страниц или элементов управления. Вызывающие лица, которым это нужно сделать, могут иметь BuildDisplayTable возвращать объект данных таблицы в lppTableData и изменять строки в нем; или они могут создать таблицу отображения вручную в объекте данных таблицы.

Если для lppTableData не задано значение NULL, поставщик отвечает за освобождение объекта данных таблицы по завершении работы с таблицей отображения.