Метод IVssComponent::AddDifferencedFilesByLastModifyTime (vswriter.h)
Метод AddDifferencedFilesByLastModifyTime используется средством записи, чтобы указать, что набор файлов (указанный файл или файлы) должен оцениваться по метке времени последнего изменения для включения в добавочную или разностную резервную копию времени с использованием целых файлов, а не частичных файлов.
Этот метод может вызываться средством записи только во время операции резервного копирования.
Синтаксис
HRESULT AddDifferencedFilesByLastModifyTime(
[in] LPCWSTR wszPath,
[in] LPCWSTR wszFilespec,
[in] BOOL bRecursive,
[in] FILETIME ftLastModifyTime
);
Параметры
[in] wszPath
Строка расширенных символов, завершающаяся null, содержащая имя каталога или иерархии каталогов, содержащей файлы для сопоставления.
Путь может содержать переменные среды (например, %SystemRoot%), но не может содержать подстановочные знаки.
Нет необходимости заканчивать путь обратной косой чертой (""). Это связано с приложениями, которые извлекают эти сведения для проверки.
[in] wszFilespec
Строка расширенных символов, завершающаяся значением NULL, содержащая спецификацию файла для сопоставления.
Спецификация файла не может содержать спецификации каталогов (например, без обратных косых черт), но может содержать ? и * подстановочные знаки.
[in] bRecursive
Логическое значение, указывающее, является ли путь, заданный параметром wszPath , идентифицирует только один каталог или указывает иерархию каталогов для рекурсивного просмотра. Этот параметр должен иметь значение true , если путь рассматривается как иерархия каталогов для рекурсивной обработки или false , если нет.
Сведения о обходе подключенных папок см. в разделе "Работа с подключенными папками" и "Точки повторного анализа".
[in] ftLastModifyTime
Спецификация модуля записи времени последнего изменения файлов разности, выраженная как структура FILETIME .
Время последнего изменения всегда задается в среднее время Гринвича.
Возвращаемое значение
Ниже приведены допустимые коды возврата для этого метода.
Значение | Значение |
---|---|
|
Успешно добавлены разностные файлы. |
|
Одно из значений параметра недопустимо. |
|
Вызывающий объект не хватает памяти или других системных ресурсов. |
|
Этот метод не был вызван средством записи или, если он вызывается средством записи, он либо не был вызван во время операции резервного копирования, либо был вызван при обработке события BackupComplete или BackupShutdown . |
|
Недопустимый XML-документ. Дополнительные сведения см. в журнале событий. Дополнительные сведения см. в разделе "Обработка событий и ошибок" в VSS. |
|
Непредвиденная ошибка. Код ошибки регистрируется в файле журнала ошибок. Дополнительные сведения см. в разделе "Обработка событий и ошибок" в VSS.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Server 2008 R2 и Windows 7. вместо этого используется E_UNEXPECTED. |
Комментарии
Модуль записи вызывает этот метод, чтобы указать, что резервные копии определенных файлов в компоненте должны выполняться только в том случае, если они были изменены с определенного времени. Дополнительные сведения см. в разделе "Резервное копирование по времени последнего изменения".
Этот метод можно вызывать только авторами, поддерживающими последнюю измененную схему (VSS_BS_LAST_MODIFY), и только во время операций резервного копирования. Записи, использующие этот метод, не должны поддерживать схему метки времени (VSS_BS_TIMESTAMPED).
Файлы, добавленные AddDifferencedFilesByLastModifyTime , также не должны добавляться IVssComponent::AddPartialFile.
Если тип резервного копирования (VSS_BACKUP_TYPE) является добавочным (VSS_BT_INCREMENTAL), записи с помощью AddDifferencedFilesByLastModifyTime должны поддерживать добавочную схему (VSS_BS_INCREMENTAL). Если тип резервного копирования разностный, модуль записи должен поддерживать схему VSS_BS_DIFFERENTIAL .
Метод AddDifferencedFilesByLastModifyTime должен вызываться до фактического запуска операции резервного копирования, как правило, при обработке события PostSnapshot (см. раздел CVssWriter::OnPostSnapshot).
Если значение метки времени, заданное AddDifferencedFilesByLastModifyTime , ненулевое, запрашивающий объект должен учитывать это значение независимо от собственных записей и сведений о файловой системе при определении того, должен ли разностный файл быть включен в разностную или добавочную резервную копию.
Если метка времени, заданная AddDifferencedFilesByLastModifyTime (ftLastModifyTime), равна нулю, инициатор запроса может использовать сведения о файловой системе и собственные записи, чтобы определить, должны ли разностные файлы включаться в разностную или добавочную резервную копию.
Инициаторы запроса извлекают количество разных файлов, управляемых компонентом, путем вызова IVssComponent::GetDifferencedFile.
Разностные наборы файлов могут быть следующими:
- Элемент текущего компонента или (если компонент определяет набор компонентов) его подкомпоненты
- Новые файлы, ранее не включенные в компонент или вложенные компоненты. Метод AddDifferencedFilesByLastModifyTime позволяет записи указывать, что файлы, созданные с момента создания исходной резервной копии, должны быть включены в компонент для поддержки добавочных или разностных резервных копий.
При добавлении новых файлов в компонент AddDifferencedFilesByLastModifyTime модуль записи не должен добавлять файлы, управляемые другим компонентом или средством записи.
В интерфейсе IVssComponent нет метода, который позволяет изменять или добавлять альтернативные сопоставления расположений для новых файлов, добавленных AddDifferencedFilesByLastModifyTime. Если сопоставление альтернативного расположения соответствует новому файлу, будет использоваться альтернативное расположение.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vswriter.h (include Vss.h, VsWriter.h) |
Библиотека | VssApi.lib |
См. также раздел
IVssComponent::GetDifferencedFile
IVssComponent::GetDifferencedFilesCount