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


Метод IVssExamineWriterMetadata::GetRestoreMethod (vsbackup.h)

Метод GetRestoreMethod возвращает сведения о том, как модуль записи хочет восстановить свои данные.

Синтаксис

HRESULT GetRestoreMethod(
  [out] VSS_RESTOREMETHOD_ENUM *pMethod,
  [out] BSTR                   *pbstrService,
  [out] BSTR                   *pbstrUserProcedure,
  [out] VSS_WRITERRESTORE_ENUM *pwriterRestore,
  [out] bool                   *pbRebootRequired,
  [out] UINT                   *pcMappings
);

Параметры

[out] pMethod

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

[out] pbstrService

Если значение pMethod равно VSS_RME_STOP_RESTORE_START или VSS_RME_RESTORE_STOP_START, указатель на строку, содержащую имя запущенной и остановленной службы. В противном случае значение равно NULL.

[out] pbstrUserProcedure

Указатель на URL-адрес HTML- или XML-документа, описывающего, как выполняется восстановление. Значение может иметь значение NULL.

[out] pwriterRestore

Указатель на VSS_WRITERRESTORE_ENUM значение, указывающее, будет ли модуль записи участвовать в восстановлении своих данных.

[out] pbRebootRequired

Указатель на логическое значение, указывающее, требуется ли перезагрузка после завершения операции восстановления. Значение получает значение true , если потребуется перезагрузка, или false в противном случае.

[out] pcMappings

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

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

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

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

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

Комментарии

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

Файл всегда должен быть восстановлен до альтернативного сопоставления расположения, если выполняется одно из следующих действий:

  • Метод восстановления (задается во время резервного копирования) VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
  • Целевой объект восстановления был задан (во время восстановления) для VSS_RT_ALTERNATE.
В любом случае, если не определено допустимое альтернативное сопоставление расположения, это представляет собой ошибку записи.

Файл можно восстановить в альтернативное сопоставление расположения, если :

  • Метод восстановления VSS_RME_RESTORE_IF_NOT_THERE, а версия файла уже присутствует на диске.
  • Метод восстановления VSS_RME_RESTORE_IF_CAN_REPLACE, а версия файла присутствует на диске и не может быть заменена.
Опять же, если не определено допустимое альтернативное сопоставление расположения, это создает ошибку записи.

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

Дополнительные сведения о методах восстановления см. в разделе Настройка методов восстановления VSS.

Если метод восстановления VSS_RME_STOP_RESTORE_START или VSS_RME_RESTORE_STOP_START, инициатор запроса использует имя, возвращаемое pbstrService , чтобы определить, какая служба должна быть остановлена во время, а затем перезапущена после восстановления. Сведения об участии модуля записи в остановке и перезапуске служб во время операции восстановления см. в статье Остановка служб для восстановления инициаторами запросов.

Требования

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

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

IVssCreateWriterMetadata::SetRestoreMethod

IVssExamineWriterMetadata