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


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

Метод AddRestoreSubcomponent указывает, что подкомпонент набора компонентов, который был помечен как неизбираемый для резервного копирования, но помечен как доступный для восстановления, должен быть восстановлен независимо от того, будет ли восстановлен какой-либо другой член набора компонентов.

Синтаксис

HRESULT AddRestoreSubcomponent(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE componentType,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] LPCWSTR            wszSubComponentLogicalPath,
  [in] LPCWSTR            wszSubComponentName,
  [in] bool               bRepair
);

Параметры

[in] writerId

Идентификатор класса записи.

[in] componentType

Определяет тип компонента. Возможные возвращаемые значения см . в документации по VSS_COMPONENT_TYPE.

[in] wszLogicalPath

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

Значение этого параметра может иметь значение NULL.

Нет ограничений на символы, которые могут отображаться в логическом пути, отличном от NULL .

[in] wszComponentName

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

Значение этого параметра не может иметь значение NULL.

Нет ограничений на символы, которые могут отображаться в имени компонента, отличном от NULL .

[in] wszSubComponentLogicalPath

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

При добавлении подкомпонента требуется логический путь. Поэтому значение этого параметра не может быть РАВНО NULL.

Нет ограничений на символы, которые могут отображаться в логическом пути, отличном от NULL .

[in] wszSubComponentName

Строка расширенных символов со значением NULL, содержащая логическое имя подкомпонента, добавляемого для восстановления.

Значение этого параметра не может иметь значение NULL.

Нет ограничений на символы, которые могут отображаться в имени компонента, отличном от NULL .

[in] bRepair

Этот параметр зарезервирован для использования в будущем. Для этого параметра всегда должно быть задано значение false.

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

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

Значение Значение
S_OK
Подкомпонент восстановления успешно добавлен.
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.

Комментарии

Перед вызовом Метода AddRestoreSubcomponent необходимо сначала выбрать корневой компонент, определенный параметрами wszLogicalPath и wszComponentName , для восстановления с помощью IVssBackupComponents::SetSelectedForRestore.

Если инициатор запроса должен поддерживать восстановление подкомпонентов, этот метод должен вызываться перед IVssBackupComponents::P reRestore.

Функция AddRestoreSubcomponent предназначена для случая, когда все файлы в наборе компонентов модуля записи должны создаваться как единое целое, но желательно, чтобы выбранные файлы (подкомпоненты) можно было восстанавливать по отдельности.

Для участия в таком восстановлении подкомпонент должен иметь элемент bSelectableForRestoreVSS_COMPONENTINFO значение TRUE. Компонент, определенный параметрами wszLogicalPath и wszComponentName , также должен быть выбран для восстановления с помощью IVssBackupComponents::SetSelectedForRestore.

Дополнительные сведения см. в разделе Работа с возможностью выбора для восстановления и вложенных компонентов .

Требования

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

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

IVssBackupComponents

IVssBackupComponents::P reRestore

VSS_COMPONENT_TYPE