Метод 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 (включая Vss.h, VsWriter.h) |
Библиотека | VssApi.lib |
См. также раздел
IVssComponent::GetDifferencedFile
IVssComponent::GetDifferencedFilesCount