Метод IVssCreateWriterMetadata::AddFilesToFileGroup (vswriter.h)

Метод AddFilesToFileGroup добавляет набор файлов (указанный файл или файлы) в указанный компонент группы файлов.

Синтаксис

HRESULT AddFilesToFileGroup(
  [in] LPCWSTR wszLogicalPath,
  [in] LPCWSTR wszGroupName,
  [in] LPCWSTR wszPath,
  [in] LPCWSTR wszFilespec,
  [in] bool    bRecursive,
  [in] LPCWSTR wszAlternateLocation,
  [in] DWORD   dwBackupTypeMask
);

Параметры

[in] wszLogicalPath

Указатель на строку расширенных символов, завершающуюся значением NULL, содержащую логический путь (который может иметь значение NULL) компонента, к которому добавляются файлы. Дополнительные сведения см. в разделе "Логический путь к компонентам".

[in] wszGroupName

Указатель на строку расширенных символов, завершающуюся значением NULL, содержащую имя компонента группы файлов. Тип этого компонента должен быть VSS_CT_FILEGROUP; в противном случае метод вернет ошибку.

[in] wszPath

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

Каталог может быть локальным каталогом на компьютере VSS или каталогом общей папки на удаленном файловом сервере.

Поддерживаются UNC-пути.

Путь может содержать переменные среды (например, %SystemRoot%), но не может содержать подстановочные знаки.

Нет необходимости заканчивать путь обратной косой чертой (""). Это связано с приложениями, которые извлекают эти сведения для проверки.

[in] wszFilespec

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

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

[in] bRecursive

Логическое значение, указывающее, является ли путь, заданный параметром wszPath , идентифицирует только один каталог или указывает иерархию каталогов для рекурсивного просмотра. Этот параметр должен иметь значение true , если путь рассматривается как иерархия каталогов для повторного выполнения или значение false .

Сведения о обходе по подключенным папкам см. в разделе "Работа с подключенными папками" и "Точки повторного анализа".

[in] wszAlternateLocation

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

Каталог может быть локальным каталогом на компьютере VSS или каталогом общей папки на удаленном файловом сервере.

Поддерживаются UNC-пути.

Указание альтернативного пути является необязательным; Если альтернативный путь не нужен, wszAlternatePath должен иметь значение NULL.

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

[in] dwBackupTypeMask

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

Значение по умолчанию для этого аргумента — (VSS_FSBT_ALL_BACKUP_REQUIRED | VSS_FSBT_ALL_SNAPSHOT_REQUIRED).

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

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

Значение Значение
S_OK
0x000000000L
Операция выполнена успешно.
E_INVALIDARG
0x80070057L
Одно из значений параметра недопустимо, или вызывающий объект попытался добавить файлы файловой группы в компонент, отличный от файлов.
E_OUTOFMEMORY
0x8007000EL
Вызывающий объект не хватает памяти или других системных ресурсов.
VSS_E_INVALID_XML_DOCUMENT
0x80042311L
Недопустимый XML-документ. Дополнительные сведения см. в журнале событий. Дополнительные сведения см. в разделе "Обработка событий и ошибок" в VSS.
VSS_E_NOT_SUPPORTED
0x8004232FL
Для экспресс-записи значение wszAlternatePath должно иметь значение NULL, а битовая маска dwBackupTypeMask не может содержать VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED, VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED или VSS_FSBT_LOG_BACKUP_REQUIRED.
VSS_E_OBJECT_NOT_FOUND
0x80042308L
Указанный компонент не существует.
VSS_E_UNEXPECTED
Непредвиденная ошибка. Код ошибки регистрируется в файле журнала ошибок. Дополнительные сведения см. в разделе "Обработка событий и ошибок" в VSS.

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

Комментарии

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP и Windows Server 2003: Удаленные общие папки не поддерживаются до Windows 8 и Windows Server 2012. Средства записи поддерживают только локальные ресурсы — наборы файлов, абсолютный путь которых начинается с допустимой спецификации локального тома и не может быть сопоставленным сетевым диском. Таким образом, входные данные пути (wszPath и wszAlternatePath) в AddFilesToFileGroup (после разрешения любых переменных среды) должны быть в этом формате.

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

Расположения, из которых создаются резервные копии файлов и в которые они восстанавливаются, зависят от значений корневого каталога, определенного wszPath , и альтернативного пути, определенного wszAlternatePath.

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

  • Операции восстановления должны (по возможности) восстанавливать файлы, добавленные в компонент AddFilesToFileGroup в корневом каталоге по умолчанию, определенном wszPath.
  • Если альтернативный путь не указан (если wszAlternatePath имеет значение NULL), файлы, добавленные в компонент, будут резервное копирование из корневого каталога по умолчанию и восстановлены в корневой каталог по умолчанию, указанный wszPath.
  • Если указан альтернативный путь (если wszAlternatePath не равен NULL), то файлы, добавленные в компонент, создаются из альтернативного пути, заданного wszAlternatePath. Однако инициаторы запросов по-прежнему будут использовать wszPath в качестве расположения восстановления по умолчанию.
  • Если определен альтернативный путь (wszAlternatePath не имеет значения NULL) и существуют файлы, соответствующие спецификации файла (wszFilespec) в альтернативном пути и корневом каталоге по умолчанию (wszPath), то операция резервного копирования должна архивировать файлы, расположенные по альтернативному пути, а не файлы, расположенные в корневом каталоге по умолчанию.
  • Файлы должны быть восстановлены в каталог, указанный wszPath , если для IVssCreateWriterMetadata::AddAlternateLocationMapping и метода восстановления или целевого объекта восстановления не было задано альтернативное сопоставление расположений.
Дополнительные сведения о расположениях файлов резервного копирования и восстановления в VSS см. в расположениях резервного копирования и восстановления, отличных от значений по умолчанию.

Требования

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

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

IVssCreateWriterMetadata

IVssCreateWriterMetadata::AddAlternateLocationMapping