共用方式為


IPropData::HrGetPropAccess

適用於:Outlook 2013 |Outlook 2016

擷取一或多個物件屬性的存取層級和狀態。

HRESULT HrGetPropAccess(
  LPSPropTagArray FAR * lppPropTagArray,
  ULONG FAR * FAR * lprgulAccess
);

參數

lppPropTagArray

[in, out]在輸入上,屬性標記的陣列,指出要擷取存取層級和狀態的屬性;否則為 NULL 的指標,指出 HrGetPropAccess 應該擷取所有屬性的存取層級和狀態。 在輸出上,已擷取其存取和狀態旗標的屬性標記數位。 旗標會儲存在 lprgulAccess 參數所指向的數位中。

lprgulAccess

[out]旗標位掩號陣列的指標。 每個位掩碼都會指出 lpPropTagArray 參數所指向數位中所識別之每個屬性的存取層級或狀態,或兩者。 這兩個陣列的位置在於 ,lprgulAccess 指向的第一個位掩碼會描述 lpPropTagArray 指向的第一個屬性,依此類推。 您可以針對每個屬性標記設定下列旗標:

存取層級旗標 狀態旗標
IPROP_READONLY,表示無法修改屬性。 IPROP_CLEAN,表示屬性尚未修改。
IPROP_READWRITE,表示可以修改屬性。 IPROP_DIRTY,表示屬性已修改。

傳回值

S_OK

已成功傳回屬性的存取層級和狀態旗標。

註解

IPropData::HrGetPropAccess 方法會擷取一組旗標,指出一或多個屬性的存取層級和狀態。

呼叫端注意事項:

您可以將 HrGetPropAccess 用於下列用途:

  • 判斷用戶端是否變更或刪除可寫入的屬性。

  • 若要防止用戶端使用 IMAPIProp 方法變更或刪除屬性。

如果已刪除 lppPropTagArray 所指向之屬性標記陣列中的其中一個屬性, HrGetPropAccess 會在輸出時將數位專案設定為 0。 如果您將 lppPropTagArray 設定為 NULL,而且已刪除物件的其中一個屬性,則會在數位中傳回已刪除的屬性。

如果已修改屬性,其IPROP_DIRTY旗標會設定在 lprgulAccess 所指向數位中的對應專案中。 不會設定IPROP_READONLY或IPROP_READWRITE。

如果屬性尚未修改或刪除,則只會設定IPROP_READONLY或IPROP_READWRITE旗標。

另請參閱

SPropTagArray

IPropData:IMAPIProp