Метод IVssBackupComponents::GetWriterMetadata (vsbackup.h)

Метод GetWriterMetadata возвращает метаданные для определенного модуля записи, работающего в системе.

Синтаксис

HRESULT GetWriterMetadata(
  [in]  UINT                      iWriter,
  [out] VSS_ID                    *pidInstance,
  [out] IVssExamineWriterMetadata **ppMetadata
);

Параметры

[in] iWriter

Индекс модуля записи, метаданные которого необходимо извлечь. Значение этого параметра является целым числом от 0 до n–1 включительно, где n — общее количество модулей записи в текущей системе. Значение n возвращается IVssBackupComponents::GetWriterMetadataCount.

[out] pidInstance

Указатель на идентификатор экземпляра модуля записи, который собрал метаданные.

[out] ppMetadata

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

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

Ниже приведены допустимые коды возврата для этого метода.

Значение Значение
S_OK
Успешно возвращен указатель на объект интерфейса IVssExamineWriterMetadata .
E_INVALIDARG
Одно из значений параметра недопустимо.
E_OUTOFMEMORY
У вызывающего объекта не хватает памяти или других системных ресурсов.
VSS_E_BAD_STATE
Объект компонентов резервного копирования не инициализирован, этот метод был вызван во время операции восстановления или этот метод не был вызван в правильной последовательности.
VSS_E_INVALID_XML_DOCUMENT
Недопустимый XML-документ. Дополнительные сведения см. в журнале событий. Дополнительные сведения см. в разделе Обработка событий и ошибок в VSS.
VSS_E_OBJECT_NOT_FOUND
Указанная теневая копия не существует.
VSS_E_UNEXPECTED
Непредвиденная ошибка. Код ошибки записывается в файл журнала ошибок. Дополнительные сведения см. в разделе Обработка событий и ошибок в VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Server 2008 R2 и Windows 7. вместо этого используется E_UNEXPECTED.

Комментарии

Инициатор запроса должен вызвать асинхронную операцию IVssBackupComponents::GatherWriterMetadata и дождаться ее завершения перед вызовом GetWriterMetadata.

Хотя IVssBackupComponents::GatherWriterMetadata необходимо вызывать перед операцией восстановления или резервного копирования, getWriterMetadata обычно не вызывается для восстановления.

Сведения о компоненте, полученные (во время операций резервного копирования) с помощью IVssExamineWriterMetadata::GetComponent, где интерфейс IVssExamineWriterMetadata был возвращен командой GetWriterMetadata, поступает из документа метаданных модуля записи модуля записи.

Это отличается от сведений, возвращаемых Командлетом GetWriterComponents (во время операций восстановления), которые хранились в документе Компонентов резервного копирования путем вызовов Метода AddComponent.

Когда вызывающий объект этого метода завершит доступ к метаданным, он должен вызвать IUnknown::Release.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header vsbackup.h (включая VsBackup.h, Vss.h, VsWriter.h)
Библиотека VssApi.lib

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

IVssBackupComponents

IVssBackupComponents::AddComponent

IVssBackupComponents::GatherWriterMetadata

IVssBackupComponents::GetWriterComponents

IVssBackupComponents::GetWriterMetadataCount

IVssExamineWriterMetadata