IVssExmentWriterMetadata::GetAlternateLocationMapping 方法 (vsbackup.h)

GetAlternateLocationMapping方法會取得檔案集的特定替代位置對應。

語法

HRESULT GetAlternateLocationMapping(
  [in]  UINT           iMapping,
  [out] IVssWMFiledesc **ppFiledesc
);

參數

[in] iMapping

特定對應的索引。 此參數的值是包含 0 到 n–1 的整數,其中 n 是與指定寫入器相關聯的替代位置對應總數。 N 的值是由IVssExtimeWriterMetadata::GetRestoreMethod傳回。

[out] ppFiledesc

包含替代位置對應資訊的 IVssWMFiledesc 物件的雙間接指標。

傳回值

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

意義
S_OK
已成功傳回 IVssWMFiledesc 介面的指標。
E_INVALIDARG
其中一個參數值無效。
E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_INVALID_XML_DOCUMENT
XML 檔無效。 請檢查事件記錄檔以取得詳細資料。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理
VSS_E_OBJECT_NOT_FOUND
指定的替代位置對應不存在。
VSS_E_UNEXPECTED
非預期的錯誤。 錯誤碼會記錄在錯誤記錄檔中。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 在 Windows Server 2008 R2 和 Windows 7 之前,不支援此值。 改用E_UNEXPECTED。

備註

IVssExternateWriterMetadata::GetAlternateLocationMapping所傳回的值不應該與IVssComponent::GetAlternateLocationMapping所傳回的值混淆。

IVssComponent::GetAlternateLocationMapping 是還原檔案的替代位置。

IVssExternerMetadata::GetAlternateLocationMapping 是可能在必要時還原檔案的替代位置對應。

如果下列任一項為 true,則檔案應一律還原至其替代位置對應:

  • ) 備份時間設定的還原 (方法VSS_RME_RESTORE_TO_ALTERNATE_LOCATION。
  • 其還原目標是在還原時間設定 (,) 設為 VSS_RT_ALTERNATE。
在這兩種情況下,如果未定義有效的替代位置對應,這會構成寫入器錯誤。

如果下列任一項為 true,檔案可能會還原至替代位置對應:

  • 還原方法VSS_RME_RESTORE_IF_NOT_THERE,而且磁片上已經有檔案的版本。
  • 還原方法VSS_RME_RESTORE_IF_CAN_REPLACE,而且檔案的版本存在於磁片上,而且無法取代。
同樣地,如果未定義有效的替代位置對應,這會構成寫入器錯誤。

替代位置對應只會在還原作業期間使用,不應與替代路徑混淆,這只能在備份作業期間使用。

呼叫端負責呼叫 IUnknown::Release ,以釋放傳回 之 IVssWMFiledesc 物件的資源。

規格需求

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

另請參閱

IVssBackupComponents::AddAlternativeLocationMapping

IVssComponent::GetAlternateLocationMapping

IVssExrovWriterMetadata

IVssEx cloneWriterMetadata::GetRestoreMethod

IVssWMFiledesc