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


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

Метод SetPreviousBackupStamp задает метку резервного копирования более ранней операции резервного копирования, на которой будет основана разностная или добавочная операция резервного копирования.

Метод можно вызывать только во время операции резервного копирования.

Синтаксис

HRESULT SetPreviousBackupStamp(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] LPCWSTR            wszPreviousBackupStamp
);

Параметры

[in] writerId

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

[in] ct

Тип компонента. Возможные значения см. в VSS_COMPONENT_TYPE .

[in] wszLogicalPath

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

Дополнительные сведения см. в разделе Логический путь компонентов.

Значение строки, содержащей используемый здесь логический путь, должно совпадать с значением, которое использовалось при добавлении компонента в резервный набор с помощью IVssBackupComponents::AddComponent.

Логический путь может иметь значение NULL.

[in] wszComponentName

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

Строка не может иметь значение NULL и должна содержать то же имя компонента, которое использовалось при добавлении компонента в резервный набор с помощью IVssBackupComponents::AddComponent.

[in] wszPreviousBackupStamp

Задается метка резервной копии.

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

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

Значение Значение
S_OK
Успешно задана предыдущая метка времени резервного копирования.
E_INVALIDARG
Одно из значений параметра является недопустимым.
E_OUTOFMEMORY
Вызывающий объект не имеет памяти или других системных ресурсов.
VSS_E_BAD_STATE
Объект компонента резервной копии не инициализирован, этот метод был вызван во время операции восстановления или этот метод не был вызван в правильной последовательности.
VSS_E_OBJECT_NOT_FOUND
Компонент резервного копирования не существует.
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.

Комментарии

Этот метод следует вызывать перед IVssBackupComponents::P repareForBackup.

Только инициаторы запроса могут вызывать этот метод.

Метка резервной копии, заданная SetPreviousBackupStamp , применяется ко всем файлам в компоненте и к любым неизбираемым подкомпонентам, которые у него есть.

Инициаторы запроса просто сохраняют метки резервных копий в документе Компоненты резервного копирования. Они не могут напрямую использовать метки резервных копий, не знают их формат и не знают, как их создать.

Поэтому значение, заданное с помощью SetPreviousBackupStamp , должно быть получено из сохраненного документа компонентов резервной копии предыдущей операции резервного копирования (с помощью IVssComponent::GetBackupStamp для правильного компонента) или из сведений, хранящихся инициатором запроса в собственных внутренних записях.

Затем модуль записи получит это значение (с помощью IVssComponent::GetPreviousBackupStamp) и сможет пометить соответствующие файлы для участия в добавочной или разностной резервной копии.

Требования

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

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

IVssBackupComponents

IVssBackupComponents::P reRestore