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
[in] MAPIAllocateBuffer 函式的指標,用來配置記憶體。
lpAllocateMore
[in] MAPIAllocateMore 函式的指標,用來配置額外的記憶體。
lpFreeBuffer
[in] MAPIFreeBuffer 函式的指標,用來釋放記憶體。
lpMalloc
閑置;應該設定為 NULL。
hInstance
[in]MAPI 對象的實例, BuildDisplayTable 會從中擷取資源。
cPages
[in]lpPage 參數所指向數位中的 DTPAGE 結構計數。
lpPage
[in] DTPAGE 結構陣列的指標,其中包含要建置之顯示數據表頁面的相關信息。
ulFlags
[in]旗標的位掩碼。 您可以設定下列旗標:
MAPI_UNICODE
傳入的字串是 Unicode 格式。 如果未設定MAPI_UNICODE旗標,則字串會是 ANSI 格式。
lppTable
[out]顯示數據表指標的指標,它會公開 IMAPITable 介面。
lppTblData
[in, out]數據表數據物件的指標,會在 lppTable 參數傳回的數據表上公開 ITableData 介面。 如果不需要數據表數據物件, 則應該將 lppTblData 設定為 NULL,而不是指標值。
傳回值
無
註解
MAPI 會針對大部分的記憶體配置和解除分配使用 lpAllocateBuffer、 lpAllocateMore 和 lpFreeBuffer 所指向的函式,特別是在呼叫 IMAPIProp::GetProps 和 IMAPITable::QueryRows 等物件介面時,配置記憶體供用戶端應用程式使用。
呼叫者注意事項
一切可能的都是從對話框資源讀取,包括:
頁面標題,也就是從資源中的對話框標題讀取之 DTBLPAGE 結構的 ulbLpszLabel 成員。
所有控件標題,也就是從資源中的控件文字讀取之其他控件結構的 ulbLpszLabel 成員。
BuildDisplayTable 會以對話框資源的資訊覆寫輸入控件結構中傳遞的任何專案,這表示 BuildDisplayTable 的呼叫端無法動態指定頁面或控件標題。 需要這麼做的呼叫者可以讓 BuildDisplayTable 傳回 lppTableData 中的數據表數據物件,並在其中變更數據列;或者,他們可以改為在數據表數據物件中手動建置顯示數據表。
如果 lppTableData 未設定為 NULL,則提供者會在資料表數據物件完成顯示數據表時,負責釋放該數據表數據物件。