Интерфейс IPropertyStorage (propidlbase.h)

Интерфейс IPropertyStorage управляет постоянными свойствами одного набора свойств. Постоянные свойства состоят из сведений, которые могут постоянно храниться в наборе свойств, например сводной информации, связанной с файлом. Это контрастирует со свойствами времени выполнения, связанными с элементами управления и автоматизацией, которые можно использовать для влияния на поведение системы. Используйте методы интерфейса IPropertySetStorage для создания или открытия постоянного набора свойств. Экземпляр интерфейса IPropertySetStorage может управлять нулевым или несколькими экземплярами IPropertyStorage .

Каждое свойство в наборе свойств определяется идентификатором свойства (ID), четырехбайтным значением ULONG , уникальным для этого набора. Вы также можете назначить строковое имя свойству с помощью интерфейса IPropertyStorage .

Идентификаторы свойств отличаются от идентификаторов диспетчеризации, используемых в тегах имен свойств dispid службы автоматизации. Одно из различий заключается в том, что в IPropertyStorage использование значений идентификатора свойства общего назначения не допускается, в то время как в 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 извлекает все существующие имена строк для указанных идентификаторов свойств.
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 присваивает строковое значение IPropertyStoragenames указанному массиву идентификаторов свойств в текущем наборе свойств.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header propidlbase.h (включая Objbase.h, Propidlbase.h)

См. также раздел

IEnumSTATPROPSETSTG

IEnumSTATPROPSTG

IPropertySetStorage

Реализация составного файла IPropertyStorage

Реализация файловой системы IPropertyStorage-NTFS

Автономная реализация IPropertyStorage

Управление свойствами

PROPVARIANT

Рекомендации по хранилищу свойств

STATPROPSETSTG

STATPROPSTG

Примеры