IVssComponent::AddDirectedTarget 方法 (vswriter.h)

AddDirectedTarget 方法可讓寫入器在還原時指出何時要還原檔案,它會 (來源檔案) 應重新對應。 檔案可以還原至新的還原位置,以及/或還原至還原位置內不同位移的數據範圍。

這個方法只能在還原作業期間由寫入器呼叫。

處理 BackupComplete (CVssWriter::OnBackupComplete) 或 BackupShutdown (CVssWriter::OnBackupShutdown) 事件時,無法呼叫此方法。

語法

HRESULT AddDirectedTarget(
  [in] LPCWSTR wszSourcePath,
  [in] LPCWSTR wszSourceFilename,
  [in] LPCWSTR wszSourceRangeList,
  [in] LPCWSTR wszDestinationPath,
  [in] LPCWSTR wszDestinationFilename,
  [in] LPCWSTR wszDestinationRangeList
);

參數

[in] wszSourcePath

在還原時,包含目錄路徑的 Null 終止寬字元字串,其中包含要還原的檔案 (原始程式檔) 。 如果元件定義元件集) ,則此路徑應該符合或位於元件 (或其其中一個子元件中的檔案集路徑下方。

[in] wszSourceFilename

以 Null 結尾的寬字元字串,其中包含備份時間 (檔名,) 還原時將重新對應 (原始程式檔) 。 wszSourceFilename (檔名) 不能包含通配符 (* 或 ?) ,而且必須與包含 wszSourcePath (來源路徑的檔案集檔案規格一致) 。

[in] wszSourceRangeList

以 Null 結尾的寬字元字串,其中包含以逗號分隔的檔案位移和長度清單,指出原始程式檔支援範圍 (實際還原的檔案區段) 。

來源檔案支援範圍的數目和長度必須符合目的地檔案支援範圍的數目和大小。

[in] wszDestinationPath

以 Null 結束的寬字元字串,其中包含在還原時將重新對應源檔案數據的路徑。

[in] wszDestinationFilename

以 Null 終止的寬字元字串,其中包含在還原時將重新對應源檔案數據的檔名。 wszDestinationFilename (檔名) 不能包含通配符 (* 或 ?) 。

[in] wszDestinationRangeList

以 Null 結束的寬字元字串,其中包含以逗號分隔的檔案位移清單和長度,指出目的地檔案支援範圍 (要還原來源檔案區段的位置) 。

目的地檔案支援範圍的數目和長度必須符合來源檔案支援範圍的數目和大小。

傳回值

以下是這個方法的有效傳回碼。

意義
S_OK
成功設定專案。
E_INVALIDARG
其中一個參數值無效。
E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_BAD_STATE
這個方法不是由寫入器呼叫,或者如果由寫入器呼叫,在還原作業期間或是在處理 BackupCompleteBackupShutdown 事件時呼叫此方法。

備註

只有寫入器可以呼叫 AddDirectedTarget,而且只能在還原作業期間呼叫。

只有在還原目標VSS_RT_DIRECTED時,要求者才會使用儲存在備份元件檔中的導向目標資訊。

AddDirectedTarget 方法可以套用至目前元件中管理的任何檔案,或者,如果元件定義元件集,則在任何不可選取的子元件中。

來源和目的地檔案規格可能指向相同的檔案。 這會允許在還原時將檔案重新對應到本身。

列出 (wszSourceRangeswszDestinationRanges 的範圍語法) 是 位移 1:length1、offset2:length2 格式的逗號分隔列表,其中每個位移和長度都是 64 位整數,分別指定位元組位移和位元組長度。 位移和長度可以表示為十六進位或十進位值。

項目數目及其大小必須符合來源和目的範圍自變數。

如果元件定義元件集,AddDirectedTarget 可以使用 做為其原始程序檔,任何已經由元件管理的檔案或其子元件之一。

如果要備份的部分檔案範圍符合導向的目標來源範圍,則部分檔案可能會新增為導向目標, (請參閱 IVssComponent::AddPartialFile) 。 這可讓您在還原時重新對應部分檔案。

在此情況下,要求者會藉由呼叫 IVssComponent::GetDirectedTarget 方法來擷取導向目標資訊,並使用該方法來在還原期間實作備份數據的重新對應。

規格需求

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

另請參閱

IVssComponent

IVssComponent::GetDirectedTarget

IVssComponent::GetDirectedTargetCount