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

Метод SaveAsXML сохраняет документ компонентов резервного копирования, содержащий сведения о состоянии инициатора запроса, в указанную строку. Этот XML-документ, содержащий документ компонентов резервного копирования, всегда должен быть безопасно сохранен в рамках операции резервного копирования.

Синтаксис

HRESULT SaveAsXML(
  [in] BSTR *pbstrXML
);

Параметры

[in] pbstrXML

Указатель на строку, используемую для хранения документа компонентов резервного копирования, содержащего сведения о состоянии инициатора запроса.

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

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

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

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

Комментарии

Для типичной операции резервного копирования метод SaveAsXML не должен вызываться до тех пор, пока средство записи и инициатор запроса не завершят изменение документа компонентов резервного копирования.

Модули записи могут продолжать изменять документ компонентов резервного копирования до успешного возвращения из обработки события PostSnapshot (CVssWriter::OnPostSnapshot) или эквивалентно после завершения IVssBackupComponents::D oSnapshotSet.

Запрашивающим будет необходимо продолжать изменять документ компонентов резервного копирования по мере выполнения резервного копирования. В частности, инициатор запроса сохраняет покомпонентную запись об успешном или неудачном выполнении резервного копирования с помощью вызовов метода IVssBackupComponents::SetBackupSucceeded .

После того как инициатор запроса завершит изменение документа компонентов резервного копирования, запрашивающий должен использовать SaveAsXML для сохранения копии документа на носитель резервного копирования.

Документ компонентов резервного копирования можно сохранить на более ранних этапах жизненного цикла операции резервного копирования, например для поддержки создания переносимых теневых копий, обрабатываемых на удаленных компьютерах. (Дополнительные сведения см. в разделе Импорт переносимых теневых копируемых томов .)

Однако метод SaveAsXML никогда не должен вызываться до IVssBackupComponents::P repareForBackup, так как документ компонентов резервного копирования не будет заполнен инициатором запроса и авторами.

Требования

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

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

IVssBackupComponents

IVssBackupComponents::GatherWriterMetadata

IVssBackupComponents::InitializeForBackup

IVssBackupComponents::InitializeForRestore

IVssBackupComponents::P repareForBackup