IPropertyStorage インターフェイス (propidlbase.h)
IPropertyStorage インターフェイスは、1 つのプロパティ セットの永続的なプロパティを管理します。 永続的なプロパティは、ファイルに関連付けられている概要情報など、プロパティ セットに永続的に格納できる情報で構成されます。 これは、システムの動作に影響を与えるために使用できる、Controls と Automation に関連付けられているランタイム プロパティとは対照的です。 永続的なプロパティ セットを作成または開くには 、IPropertySetStorage インターフェイスのメソッドを使用します。 IPropertySetStorage インターフェイスのインスタンスは、0 個以上の IPropertyStorage インスタンスを管理できます。
プロパティ セット内の各プロパティは、そのセットに固有の 4 バイト の ULONG 値であるプロパティ識別子 (ID) によって識別されます。 IPropertyStorage インターフェイスを使用して、プロパティに文字列名を割り当てることもできます。
プロパティ ID は、Automation dispid プロパティ名タグで使用されるディスパッチ ID とは異なります。 1 つの違いは、 IPropertyStorage ではプロパティ ID 値 0 と 1 の汎用使用は禁止されていますが、 IDispatch にはそのような制限は存在しません。 さらに、 IPropertyStorage と IDispatch で使用できるプロパティ値のデータ型間には大きな重複がありますが、プロパティ セットは同じではありません。 IPropertyStorage メソッドで使用される永続的なプロパティ データ型は、PROPVARIANT 構造体で定義されます。
IPropertyStorage インターフェイスを使用して、単純プロパティ セットと非単純プロパティ セットの両方にアクセスできます。 単純でないプロパティ セットには、単純なプロパティ セットに保持できない複数の複合プロパティ型を保持できます。 詳細については、「プロパティ セットのストレージ オブジェクトとStream オブジェクト」を参照してください。
継承
IPropertyStorage インターフェイスは、IUnknown インターフェイスから継承します。 IPropertyStorage には、次の種類のメンバーもあります。
メソッド
IPropertyStorage インターフェイスには、これらのメソッドがあります。
IPropertyStorage::Commit IPropertyStorage::Commit メソッドは、プロパティ ストレージ オブジェクトに加えられた変更を親ストレージ オブジェクトに保存します。 |
IPropertyStorage::D eleteMultiple IPropertyStorage::D eleteMultiple メソッドは、プロパティ セットに存在する指定されたプロパティの数だけ削除します。 |
IPropertyStorage::D eletePropertyNames IPropertyStorage::D eletePropertyNames メソッドは、指定された文字列名を現在のプロパティ セットから削除します。 |
IPropertyStorage::Enum IPropertyStorage::Enum メソッドは、現在のプロパティ セットに関する情報を含む STATPROPSTG 型のデータを列挙するように設計された列挙子オブジェクトを作成します。 |
IPropertyStorage::ReadMultiple IPropertyStorage::ReadMultiple メソッドは、現在のプロパティ セットから指定されたプロパティを読み取ります。 |
IPropertyStorage::ReadPropertyNames IPropertyStorage::ReadPropertyNames メソッドは、指定されたプロパティ ID の既存の文字列名を取得します。 |
IPropertyStorage::Revert IPropertyStorage::Revert メソッドは、最後に開いた後に名前付きプロパティ セットに対するすべての変更を破棄するか、プロパティ セットに最後にコミットされた変更を破棄します。 |
IPropertyStorage::SetClass IPropertyStorage::SetClass メソッドは、現在のプロパティ ストレージ オブジェクトに新しい CLSID を割り当て、CLSID を オブジェクトと共に永続的に格納します。 |
IPropertyStorage::SetTimes 実装でサポートされている場合、IPropertyStorage::SetTimes メソッドは、このプロパティ セットの変更、アクセス、および作成時間を設定します。 |
IPropertyStorage::Stat IPropertyStorage::Stat メソッドは、現在開いているプロパティ セットに関する情報を取得します。 (IPropertyStorage.Stat) |
IPropertyStorage::WriteMultiple IPropertyStorage::WriteMultiple メソッドは、指定したプロパティ グループを現在のプロパティ セットに書き込みます。 |
IPropertyStorage::WritePropertyNames IPropertyStorage::WritePropertyNames メソッドは、現在のプロパティ セット内のプロパティ ID の指定された配列に文字列 IPropertyStoragenames を割り当てます。 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | propidlbase.h (Objbase.h、Propidlbase.h を含む) |
こちらもご覧ください
IPropertyStorage-Compound ファイルの実装