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 | 通知物件可以返回 Normal 模式以寫入其儲存物件。 ATL 實作會傳回S_OK。 |
備註
IPersistStorageImpl
會 實作 IPersistStorage 介面,這可讓用戶端要求您的物件載入,並使用記憶體儲存其永續性數據。
這個類別的實作需要 類別T
,才能透過 QueryInterface
取得介面的實作IPersistStreamInit
。 這通常表示類別T
應該衍生自 IPersistStreamInitImpl、在 COM 對應中提供的專案IPersistStreamInit
,並使用屬性對應來描述類別的持續性數據。
繼承階層架構
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的呼叫。
請參閱 IPersistStorage:Save in the Windows SDK。
IPersistStorageImpl::SaveCompleted
通知物件可以返回 Normal 模式以寫入其儲存物件。
STDMETHOD(SaveCompleted)(IStorage*);
傳回值
傳回S_OK。
備註
請參閱 Windows SDK 中的 IPersistStorage:SaveCompleted 。
另請參閱
記憶體和串流
IPersistStreamInitImpl 類別
IPersistPropertyBagImpl 類別
類別概觀