IPersistStorageImpl クラス
このクラスは、IPersistStorage インターフェイスを実装します。
重要
このクラスとそのメンバーは、Windows ランタイムで実行するアプリケーションで使用することはできません。
構文
template <class T>
class ATL_NO_VTABLE IPersistStorageImpl : public IPersistStorage
パラメーター
T
IPersistStorageImpl
から派生したクラス。
メンバー
パブリック メソッド
名前 | 説明 |
---|---|
IPersistStorageImpl::GetClassID | オブジェクトの CLSID を取得します。 |
IPersistStorageImpl::HandsOffStorage | すべてのストレージ オブジェクトを解放し、HandsOff モードに切り替えるようオブジェクトに指示します。 ATL 実装では S_OK が返されます。 |
IPersistStorageImpl::InitNew | 新しいストレージを初期化します。 |
IPersistStorageImpl::IsDirty | オブジェクトのデータが最後の保存された後に変更されたかどうかを確認します。 |
IPersistStorageImpl::Load | オブジェクトのプロパティを、指定したストレージから読み込みます。 |
IPersistStorageImpl::Save | オブジェクトのプロパティを、指定したストレージに保存します。 |
IPersistStorageImpl::SaveCompleted | 通常モードに戻ってストレージ オブジェクトに書き込み可能であることをオブジェクトに通知します。 ATL 実装では S_OK が返されます。 |
解説
IPersistStorageImpl
は IPersistStorage インターフェイスを実装しています。これにより、クライアントはオブジェクトの読み込み要求を行い、ストレージを使用して永続データを保存できます。
このクラスの実装では、QueryInterface
を介して IPersistStreamInit
インターフェイスの実装を使用可能にするために、クラス T
が必要です。 これは通常、クラス T
が IPersistStreamInitImpl から派生し、COM マップで IPersistStreamInit
のエントリを指定し、プロパティ マップを使用してクラスの永続的なデータを記述する必要があることを意味します。
関連記事 ATL チュートリアル、 ATL プロジェクトの作成
継承階層
IPersistStorage
IPersistStorageImpl
要件
ヘッダー: atlcom.h
IPersistStorageImpl::GetClassID
オブジェクトの CLSID を取得します。
STDMETHOD(GetClassID)(CLSID* pClassID);
解説
Windows SDK の IPersist::GetClassID に関する記事を参照してください。
IPersistStorageImpl::HandsOffStorage
すべてのストレージ オブジェクトを解放し、HandsOff モードに切り替えるようオブジェクトに指示します。
STDMETHOD(HandsOffStorage)(void);
戻り値
S_OK を返します。
解説
Windows SDK のIPersistStorage::HandsOffStorage に関する記事を参照してください。
IPersistStorageImpl::InitNew
新しいストレージを初期化します。
STDMETHOD(InitNew)(IStorage*);
解説
ATL 実装は、IPersistStreamInit インターフェイスにデリゲートします。
Windows SDK の IPersistStorage::InitNew に関する記事を参照してください。
IPersistStorageImpl::IsDirty
オブジェクトのデータが最後の保存された後に変更されたかどうかを確認します。
STDMETHOD(IsDirty)(void);
解説
ATL 実装は、IPersistStreamInit インターフェイスにデリゲートします。
Windows SDK の IPersistStorage::IsDirty に関する記事を参照してください。
IPersistStorageImpl::Load
オブジェクトのプロパティを、指定したストレージから読み込みます。
STDMETHOD(Load)(IStorage* pStorage);
解説
ATL 実装は、IPersistStreamInit インターフェイスにデリゲートします。 Load
は、"Contents" という名前のストリームを使用して、オブジェクトのデータを取得します。 Save メソッドでは、最初にこのストリームが作成されます。
Windows SDK の IPersistStorage::Load に関する記事を参照してください。
IPersistStorageImpl::Save
オブジェクトのプロパティを、指定したストレージに保存します。
STDMETHOD(Save)(IStorage* pStorage, BOOL fSameAsLoad);
解説
ATL 実装は、IPersistStreamInit インターフェイスにデリゲートします。 Save
が最初に呼び出されると、指定したストレージに "Contents" という名前のストリームが作成されます。 このストリームは、後で Save
の呼び出しと Load の呼び出しで使用されます。
Windows SDK の IPersistStorage::Save に関する記事を参照してください。
IPersistStorageImpl::SaveCompleted
通常モードに戻ってストレージ オブジェクトに書き込み可能であることをオブジェクトに通知します。
STDMETHOD(SaveCompleted)(IStorage*);
戻り値
S_OK を返します。
解説
Windows SDK の IPersistStorage::SaveCompleted に関する記事を参照してください。
関連項目
ストレージとストリーム
IPersistStreamInitImpl クラス
IPersistPropertyBagImpl クラス
クラスの概要