次の方法で共有


IPropertySetStorage-スタンドアロン実装

IPropertySetStorage のシステム提供のスタンドアロン実装には、IPropertyStorageIPropertySetStorage の両方の実装が含まれています。IPropertyStorage は、プロパティ セット ストレージ内のプロパティの読み取りと書き込みを行うインターフェイスです。 IPropertySetStorage は、ストレージ内のプロパティ セットを作成して開くインターフェイスです。 IEnumSTATPROPSTG インターフェイスと IEnumSTATPROPSETSTG インターフェイスは、スタンドアロン実装でも提供されます。

IPropertySetStorage のスタンドアロン実装を使用するには、まず、システム提供のスタンドアロン実装へのポインターを取得し、システム提供の実装をストレージ オブジェクトに関連付けます。 IPropertySetStorage のスタンドアロン実装へのポインターを取得するには、StgCreatePropSetStg 関数を呼び出し、プロパティ セットを含むストレージ オブジェクトを指定する pStorage パラメーターを指定します。 この関数は、指定されたストレージ オブジェクトの新しい IPropertySetStorage インターフェイスへのポインターを提供します。

IPropertySetStorage のスタンドアロン実装では、複合ファイル ストレージだけでなく、任意のストレージ オブジェクトにプロパティ セットが作成されます。 スタンドアロン実装は複合ファイルに依存せず、構造化ストレージの任意の実装で使用できます。 呼び出し元によって提供される構造化ストレージに関する制限は、このプロパティ セットの実装に適用されます。 たとえば、 StgOpenPropStg に簡易モードストレージを指定すると、結果として得られる IPropertySetStorage は、指定された IStorage によって制限されます。

このインターフェイスの複合ファイル実装の詳細については、「 IPropertySetStorage-複合ファイルの実装」セクションを参照してください。

使用するタイミング

IPropertySetStorage のメソッドを呼び出して、構造化ストレージ内のプロパティ セットを作成、開く、削除します。 また、ストレージ内のプロパティ セットを列挙するために使用できる IEnumSTATPROPSETSTG 列挙子へのポインターを提供するメソッドもあります。

スタンドアロン実装では、Create メソッドと Open メソッドに加えて、StgCreatePropStg および StgOpenPropStg ヘルパー関数も提供され、プロパティ セットを作成および開くことができます。 これら 2 つの関数は、PROPSETFLAG_UNBUFFERED値のサポートを追加するため、変更をキャッシュにバッファー処理するのではなく、プロパティ セットに直接書き込むことができます。 詳細については、「 PROPSETFLAG 定数」を参照してください。

メソッド

IPropertySetStorage のスタンドアロン実装では、次のメソッドがサポートされています。

IPropertySetStorage::Create

ストレージに新しいプロパティ セットを作成し、プロパティ セットの IPropertyStorage インターフェイスへのポインターを返します。

PROPSETFLAG_UNBUFFERED値を使用する場合は、代わりに StgCreatePropStg 関数を使用して、新しいプロパティ セットを作成して開き、プロパティ セットの IPropertyStorage インターフェイスのスタンドアロン実装へのポインターを取得します。

IPropertySetStorage::Open

ストレージ内の既存のプロパティ セットを開き、プロパティ セットの IPropertyStorage インターフェイスへのポインターを返します。

PROPSETFLAG_UNBUFFERED値を使用する場合は、代わりに StgOpenPropStg 関数を使用して、指定したプロパティ セットに対する IPropertyStorage の スタンドアロン実装へのポインターを取得します。

IPropertySetStorage::D elete

このプロパティ セット ストレージ内のプロパティ セットを削除します。

IPropertySetStorage::Enum

STATPROPSETSTG 構造体を列挙するために使用できるオブジェクトを作成します。 各 STATPROPSETSTG 構造体は、1 つのプロパティ セットに関するデータを提供します。

Note

DocumentSummaryInformation プロパティ セットと UserDefined プロパティ セットは、1 つの基になるストリームに 2 つのプロパティ セット セクションがある可能性がある点で一意です。 詳細については、「 DocumentSummaryInformation および UserDefined プロパティ セット 」を参照してください。

 

IPropertyStorage-スタンドアロンの実装

IPropertySetStorage

IPropertyStorage

IStorage::EnumElements

PROPSETFLAG 定数

STATPROPSETSTG

StgCreatePropSetStg

StgCreatePropStg

StgOpenPropStg

STGM 定数