Поделиться через


Класс IPersistStorageImpl

Этот класс реализует интерфейс IPersist служба хранилища.

Важно!

Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.

Синтаксис

template <class T>
class ATL_NO_VTABLE IPersistStorageImpl : public IPersistStorage

Параметры

T
Класс, производный от IPersistStorageImpl.

Участники

Открытые методы

Имя Описание
IPersist служба хранилища Impl::GetClassID Извлекает CLSID объекта.
IPersist служба хранилища Impl::HandsOff служба хранилища Указывает объекту освободить все объекты хранилища и ввести режим HandsOff. Реализация ATL возвращает S_OK.
IPersist служба хранилища Impl::InitNew Инициализирует новое хранилище.
IPersist служба хранилища Impl::IsDirty Проверяет, изменились ли данные объекта с момента последнего сохранения.
IPersist служба хранилища Impl::Load Загружает свойства объекта из указанного хранилища.
IPersist служба хранилища Impl::Save Сохраняет свойства объекта в указанном хранилище.
IPersist служба хранилища Impl::SaveCompleted Уведомляет объект о том, что он может вернуться в обычный режим для записи в объект хранилища. Реализация ATL возвращает S_OK.

Замечания

IPersistStorageImplреализует интерфейс IPersist служба хранилища, который позволяет клиенту запрашивать загрузку объекта и сохранять постоянные данные с помощью хранилища.

Реализация этого класса требует, чтобы класс T был IPersistStreamInit доступен через QueryInterfaceинтерфейс. Как правило, это означает, что класс T должен быть производным от IPersistStreamInitImpl, предоставлять запись для IPersistStreamInit карты COM и использовать карту свойств для описания постоянных данных класса.

Руководство по созданию проекта ATL в статьяхATL

Иерархия наследования

IPersistStorage

IPersistStorageImpl

Требования

Заголовок: atlcom.h

IPersist служба хранилища Impl::GetClassID

Извлекает CLSID объекта.

STDMETHOD(GetClassID)(CLSID* pClassID);

Замечания

См . раздел IPersist::GetClassID в пакете SDK для Windows.

IPersist служба хранилища Impl::HandsOff служба хранилища

Указывает объекту освободить все объекты хранилища и ввести режим HandsOff.

STDMETHOD(HandsOffStorage)(void);

Возвращаемое значение

Возвращает S_OK.

Замечания

См. раздел IPersist служба хранилища::HandsOff служба хранилища в пакете SDK для Windows.

IPersist служба хранилища Impl::InitNew

Инициализирует новое хранилище.

STDMETHOD(InitNew)(IStorage*);

Замечания

Реализация ATL делегирует интерфейсУ IPersistStreamInit .

См. раздел IPersist служба хранилища:InitNew в пакете SDK для Windows.

IPersist служба хранилища Impl::IsDirty

Проверяет, изменились ли данные объекта с момента последнего сохранения.

STDMETHOD(IsDirty)(void);

Замечания

Реализация ATL делегирует интерфейсУ IPersistStreamInit .

См. раздел IPersist служба хранилища:IsDirty в пакете SDK для Windows.

IPersist служба хранилища Impl::Load

Загружает свойства объекта из указанного хранилища.

STDMETHOD(Load)(IStorage* pStorage);

Замечания

Реализация ATL делегирует интерфейсУ IPersistStreamInit . Load использует поток с именем "Содержимое" для получения данных объекта. Метод Save изначально создает этот поток.

См. раздел IPersist служба хранилища:Load в пакете SDK для Windows.

IPersist служба хранилища Impl::Save

Сохраняет свойства объекта в указанном хранилище.

STDMETHOD(Save)(IStorage* pStorage, BOOL fSameAsLoad);

Замечания

Реализация ATL делегирует интерфейсУ IPersistStreamInit . При Save первом вызове он создает поток с именем "Содержимое" в указанном хранилище. Затем этот поток используется в последующих вызовах Save и вызовах load.

См. раздел IPersist служба хранилища:Save in the Windows SDK.

IPersist служба хранилища Impl::SaveCompleted

Уведомляет объект о том, что он может вернуться в обычный режим для записи в объект хранилища.

STDMETHOD(SaveCompleted)(IStorage*);

Возвращаемое значение

Возвращает S_OK.

Замечания

См. раздел IPersist служба хранилища:SaveCompleted в пакете SDK для Windows.

См. также

служба хранилища и Потоки
Класс IPersistStreamInitImpl
Класс IPersistPropertyBagImpl
Общие сведения о классе