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
0x00000000L
作業成功。
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_REQUIREDVSS_FSBT_INCREMENTAL_BACKUP_REQUIREDVSS_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 之前,不支援遠端檔案共用。 寫入器僅支援本機資源—其絕對路徑開頭為有效本機磁碟區規格的檔案集,而且不能是對應的網路驅動器機。 因此,在解析任何) 環境變數之後, (wszPathwszAlternatePath) 至 AddFilesToFileGroup (的路徑輸入必須以此格式。

寫入器可以多次呼叫這個方法,將數位檔案新增至其檔案群元件。 不過,您應該確定檔案規格不會重疊,因為特定檔案只能指定一次。

從中備份檔案的位置和還原檔案的位置,取決於 wszPath 所定義的根目錄值,以及 wszAlternatePath 所定義的替代路徑。

使用 AddFilesToFileGroup 提供的路徑資訊時,請注意下列事項:

  • 如果可能的話,還原作業應該 () 在 wszPath 所定義的預設根目錄下,由 AddFilesToFileGroup 新增至元件。
  • 如果未指定替代路徑 (如果 wszAlternatePathNULL) ,則新增至元件的檔案將會從預設根目錄備份,並還原至 wszPath 所指示的預設根目錄。
  • 如果指定替代路徑 (如果 wszAlternatePath 不是 NULL) ,則新增至元件的檔案會從 wszAlternatePath 指定的替代路徑進行備份。 不過,要求者仍會使用 wszPath 作為預設還原位置。
  • 如果已定義替代路徑 (wszAlternatePath 為非 NULL) ,而且在替代路徑和 wszFilespec) 中有檔案符合檔案規格 () wszPath (wszPath) ,則備份作業應該備份位於替代路徑下的檔案,而不是位於預設根目錄下的檔案。
  • 除非 IVssCreateWriterMetadata::AddAlternateLocationMapping 設定替代位置對應,否則檔案應還原至 wszPath 所指示的目錄,否則還原方法或還原目標需要它。
如需 VSS 下備份和還原檔位置的詳細資訊,請參閱 非預設備份和還原位置

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 vswriter.h (包括 Vss.h、VsWriter.h)
程式庫 VssApi.lib

另請參閱

IVssCreateWriterMetadata

IVssCreateWriterMetadata::AddAlternateLocationMapping