共用方式為


IPropertySetStorage-獨立實作

系統提供的獨立實作 IPropertySetStorage 包含 IPropertyStorageIPropertySetStorage實作。IPropertyStorage 是屬性集記憶體中讀取和寫入屬性的介面。 IPropertySetStorage 是會在記憶體中建立和開啟屬性集的介面。 獨立實作中也會提供 IEnumSTATPROPSTGIEnumSTATPROPSETSTG 介面。

若要使用獨立實作 IPropertySetStorage,請先取得系統提供的獨立實作指標,並將系統提供的實作與您的儲存對象產生關聯。 若要取得獨立實作 IPropertySetStorage的指標,請呼叫 StgCreatePropSetStg 函式,並提供 pStorage 參數,指定將包含屬性集的儲存物件。 此函式會提供指定之記憶體物件之新 IPropertySetStorage 介面的指標。

IPropertySetStorage 的獨立實作 會在任何儲存物件上建立屬性集,而不只是在複合檔案記憶體上。 獨立實作不相依於複合檔案,並可搭配任何結構化記憶體實作使用。 呼叫端所提供結構化記憶體的任何限制都適用於這個屬性集的實作。 例如,如果您提供簡單的模式記憶體來 StgOpenPropStg,則產生的 IPropertySetStorage 將會受限於提供的 IStorage

如需此介面之複合檔案實作的詳細資訊,請參閱 IPropertySetStorage-Compound< 檔案實作> 一節。

使用時機

呼叫 IPropertySetStorage 的方法,以在任何結構化記憶體中建立、開啟和刪除屬性集。 另外還有一個方法,提供指標給 IEnumSTATPROPSETSTG 列舉值,可用來列舉記憶體中的屬性集。

獨立實作也提供 StgCreatePropStgStgOpenPropStg 協助程式函式,除了 CreateOpen 方法之外,還可以建立和開啟屬性集。 這兩個函式會新增對 PROPSETFLAG_UNBUFFERED 值的支援,因此您可以直接將變更寫入屬性集,而不是在快取中緩衝。 如需詳細資訊,請參閱 PROPSETFLAG 常數

方法

IPropertySetStorage 的獨立實作支援下列方法。

IPropertySetStorage::Create

在記憶體中建立新的屬性集,並傳回屬性集上 IPropertyStorage 介面的指標。

如果您打算使用 PROPSETFLAG_UNBUFFERED 值,請改用 StgCreatePropStg 函式來建立和開啟新的屬性集,並取得屬性集上 IPropertyStorage 介面的獨立實作指標。

IPropertySetStorage::Open

在記憶體中開啟現有的屬性集,並傳回屬性集上 IPropertyStorage 介面的指標。

如果您打算使用PROPSETFLAG_UNBUFFERED值,請使用 StgOpenPropStg 函式,以取得指定屬性集上 IPropertyStor age 獨立實作的指標。

IPropertySetStorage::D elete

刪除此屬性集記憶體中的屬性集。

IPropertySetStorage::Enum

建立對象,這個物件可用來列舉 STATPROPSETSTG結構。 每個 STATPROPSETSTG 結構都會提供單一屬性集的相關數據。

注意

DocumentSummaryInformation 和 UserDefined 屬性集是唯一的,因為它在單一基礎數據流中可能有兩個屬性集區段。 如需詳細資訊,請參閱 DocumentSummaryInformation 和 UserDefined 屬性集

 

IPropertyStorage-獨立實作

IPropertySetStorage

IPropertyStorage

IStorage::EnumElements

PROPSETFLAG 常數

STATPROPSETSTG

StgCreatePropSetStg

StgCreatePropStg

StgOpenPropStg

STGM 常數