共用方式為


IVssEx cloneWriterMetadata::GetRestoreMethod 方法 (vsbackup.h)

GetRestoreMethod 方法會傳回寫入器如何還原其數據的相關信息。

語法

HRESULT GetRestoreMethod(
  [out] VSS_RESTOREMETHOD_ENUM *pMethod,
  [out] BSTR                   *pbstrService,
  [out] BSTR                   *pbstrUserProcedure,
  [out] VSS_WRITERRESTORE_ENUM *pwriterRestore,
  [out] bool                   *pbRebootRequired,
  [out] UINT                   *pcMappings
);

參數

[out] pMethod

指定覆寫檔案 之VSS_RESTOREMETHOD_ENUM 值的指標,使用指定還原作業中將使用之方法的替代位置。

[out] pbstrService

如果 pMethod 的值是VSS_RME_STOP_RESTORE_START或VSS_RME_RESTORE_STOP_START,則字串的指標,其中包含已啟動和停止的服務名稱。 否則,此值為 NULL

[out] pbstrUserProcedure

HTML 或 XML 檔的 URL 指標,描述如何執行還原的使用者。 此值可以是 NULL

[out] pwriterRestore

指定寫入器是否涉及還原其數據的 VSS_WRITERRESTORE_ENUM 值指標。

[out] pbRebootRequired

布爾值的指標,指出還原作業完成之後是否需要重新啟動。 如果需要重新啟動,則此值會接收 true ,否則為 false

[out] pcMappings

與寫入器相關聯的替代對應數目指標。

傳回值

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

意義
S_OK
已成功傳回還原方法資訊。
S_FALSE
還原方法不存在。
E_INVALIDARG
其中一個參數值無效。
E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_INVALID_XML_DOCUMENT
XML 檔無效。 請檢查事件記錄檔以取得詳細數據。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理
VSS_E_UNEXPECTED
非預期的錯誤。 錯誤碼會記錄在錯誤記錄檔中。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理

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

備註

呼叫端必須藉由呼叫 SysFreeString 來釋放 pbstrUserProcedurepbstrService 參數所使用的記憶體。

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

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

如果 為 ,則可以將檔案還原至替代位置對應:

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

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

如需還原方法的詳細資訊,請參閱 設定 VSS 還原方法

如果還原方法VSS_RME_STOP_RESTORE_START或VSS_RME_RESTORE_STOP_START,則要求者會使用 pbstrService 傳回的名稱來判斷必須在還原期間停止,然後在還原之後重新啟動。 如需在還原作業期間停止和重新啟動服務之寫入器參與的資訊,請參閱 停止服務供要求者 還原。

規格需求

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

另請參閱

IVssCreateWriterMetadata::SetRestoreMethod

IVssExrovWriterMetadata