Freigeben über


BuildDisplayTable

Gilt für: Outlook 2013 | Outlook 2016

Erstellt eine Anzeigetabelle aus den Eigenschaftenseitendaten, die in einer oder mehreren DTPAGE-Strukturen enthalten sind.

Eigenschaft Wert
Headerdatei
Mapiutil.h
Implementiert von:
MAPI
Aufgerufen von:
Dienstanbieter
STDAPI BuildDisplayTable(
  LPALLOCATEBUFFER lpAllocateBuffer,
  LPALLOCATEMORE lpAllocateMore,
  LPFREEBUFFER lpFreeBuffer,
  LPMALLOC lpMalloc,
  HINSTANCE hInstance,
  UINT cPages,
  LPDTPAGE lpPage,
  ULONG ulFlags,
  LPMAPITABLE * lppTable,
  LPTABLEDATA * lppTblData
);

Parameter

lpAllocateBuffer

[in] Zeiger auf die MAPIAllocateBuffer-Funktion , die zum Zuweisen von Arbeitsspeicher verwendet werden soll.

lpAllocateMehr

[in] Zeiger auf die MAPIAllocateMore-Funktion , die zum Zuweisen von zusätzlichem Arbeitsspeicher verwendet werden soll.

lpFreeBuffer

[in] Zeiger auf die MAPIFreeBuffer-Funktion , die zum Freigeben von Arbeitsspeicher verwendet werden soll.

lpMalloc

Unbenutzte; sollte auf NULL festgelegt werden.

Hinstance

[in] Eine instance eines MAPI-Objekts, aus dem BuildDisplayTable Ressourcen abruft.

cPages

[in] Anzahl der DTPAGE-Strukturen im Array, auf das der lpPage-Parameter verweist.

lpPage

[in] Zeiger auf ein Array von DTPAGE-Strukturen , die Informationen zu den zu erstellenden Anzeigetabellenseiten enthalten.

ulFlags

[in] Bitmaske von Flags. Das folgende Flag kann festgelegt werden:

MAPI_UNICODE

Die übergebenen Zeichenfolgen liegen im Unicode-Format vor. Wenn das MAPI_UNICODE-Flag nicht festgelegt ist, liegen die Zeichenfolgen im ANSI-Format vor.

lppTable

[out] Zeiger auf einen Zeiger auf die Anzeigetabelle, die die IMAPITable-Schnittstelle verfügbar macht.

lppTblData

[in, out] Zeiger auf einen Zeiger auf ein Tabellendatenobjekt, das die ITableData-Schnittstelle für die im lppTable-Parameter zurückgegebene Tabelle verfügbar macht. Wenn kein Tabellendatenobjekt gewünscht wird, sollte lppTblData anstelle eines Zeigerwerts auf NULL festgelegt werden.

Rückgabewert

Keine

Hinweise

MAPI verwendet die Funktionen, auf die lpAllocateBuffer, lpAllocateMore und lpFreeBuffer für die meisten Speicherzuordnungen und -freigaben verweisen, insbesondere, um Arbeitsspeicher für die Verwendung durch Clientanwendungen zuzuweisen, wenn Objektschnittstellen wie IMAPIProp::GetProps und IMAPITable::QueryRows aufgerufen werden.

Hinweise für Aufrufer

Alles mögliche wird aus der Dialogressource gelesen, einschließlich:

  • Der Seitentitel, d. h. das ulbLpszLabel-Element der DTBLPAGE-Struktur , das aus dem Dialogtitel in der Ressource gelesen wird.

  • Alle Steuerelementtitel, d. h. die ulbLpszLabel-Member anderer Steuerelementstrukturen, die aus dem Steuerelementtext in der Ressource gelesen werden.

BuildDisplayTable überschreibt alles, was in den Eingabesteuerelementstrukturen übergeben wird, mit Informationen aus der Dialogressource, was bedeutet, dass der Aufrufer von BuildDisplayTable keine Seiten- oder Steuerelementtitel dynamisch angeben kann. Aufrufer, die dies tun müssen, können buildDisplayTable das Tabellendatenobjekt in lppTableData zurückgeben und zeilen darin ändern. oder sie können die Anzeigetabelle manuell in einem Tabellendatenobjekt erstellen.

Wenn lppTableData nicht auf NULL festgelegt ist, ist der Anbieter für die Freigabe des Tabellendatenobjekts verantwortlich, wenn es mit der Anzeigetabelle fertig ist.