IPropertySetStorage 介面 (propidl.h)
IPropertySetStorage 介面會建立、開啟、刪除和列舉支援 IPropertyStorage 介面實例的屬性集記憶體。 IPropertyStorage 介面會管理屬性記憶體子物件中的單一屬性集;和 IPropertySetStorage 介面會管理這類屬性集群組的儲存。 任何文件系統實體都可以支援目前在 COM 複合檔案物件中實作的 IPropertySetStorage 。
不論這些集合是否位於支援 IStorage 的記憶體物件中,IPropertySetStorage 和 IPropertyStorage 介面都會提供統一的方式來建立和管理屬性集。 透過支援 IStorage (的物件呼叫時,例如結構化和複合檔案) 或 IStream,建立的屬性集符合 COM 屬性集格式,如 結構化記憶體串行化屬性集格式中所述。 同樣地,使用 IStorage 寫入 COM 屬性集格式的屬性可透過 IPropertySetStorage 和 IPropertyStorage 來看見。
IPropertySetStorage 方法會透過全域唯一標識符來識別屬性集, (GUID) 稱為格式標識碼 (FMTID) 。 屬性集的 FMTID 會識別屬性集中的屬性識別碼、其意義,以及值的任何條件約束。 屬性集的 FMTID 也應該提供操作該屬性集的方法。 在單一屬性記憶體中,一次只能存在一個給定 FMTID 的實例。
繼承
IPropertySetStorage 介面繼承自 IUnknown 介面。 IPropertySetStorage 也有下列類型的成員:
方法
IPropertySetStorage 介面具有這些方法。
IPropertySetStorage::Create 在屬性集儲存物件中建立並開啟新的屬性集。 |
IPropertySetStorage::D elete Delete 方法會刪除屬性集儲存物件中包含的其中一個屬性集。 |
IPropertySetStorage::Enum Enum 方法會建立列舉值物件,其中包含儲存在此屬性集記憶體中的屬性集資訊。 傳回時,這個方法會提供列舉值物件上 IEnumSTATPROPSETSTG 指標的指標。 |
IPropertySetStorage::Open 開啟屬性集儲存物件中包含的屬性集。 |
備註
當 呼叫 IPropertySetStorage::Create 來建立 UserDefined 屬性集時,會自動建立第一個區段。 建立FMTID_UserDefinedProperties之後,不需要建立FMTID_DocSummaryInformation,但可以使用 IPropertySetStorage::Open 的呼叫來開啟。 建立第一個區段不會自動建立第二個區段,而且無法同時開啟這兩個區段。
呼叫 IPropertySetStorage::D elete,刪除第一個區段會導致刪除這兩個區段。 換句話說,呼叫 具有 FMTID_DocSummaryInformation 的 IPropertySetStorage::D elete 會導致刪除該區段和FMTID_UserDefinedProperties區段。 不過,刪除第二個區段並不會自動刪除第一個區段。
當 IPropertySetStorage::Enum 用來列舉屬性集時,不會列舉 UserDefined 屬性集。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | propidl.h (include Objbase.h) |
另請參閱
IPropertySetStorage-Compound 檔案實作