IVssBackupComponents::SetSelectedForRestore 方法 (vsbackup.h)

SetSelectedForRestore 方法會指出是否已選取指定的可選取元件進行還原。

語法

HRESULT SetSelectedForRestore(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] bool               bSelectedForRestore
);

參數

[in] writerId

寫入器標識碼。

[in] ct

元件的類型。 如需可能的值 ,請參閱VSS_COMPONENT_TYPE

[in] wszLogicalPath

以 Null 結尾的寬字元字串,其中包含元件的邏輯路徑。 如需詳細資訊,請參閱 元件的邏輯路徑

包含此處所使用邏輯路徑的字串值應該與新增元件時所使用的相同。

邏輯路徑可以是 NULL

在非 NULL 邏輯路徑中出現的字元沒有任何限制。

[in] wszComponentName

包含元件名稱的 Null 終止寬字元字串。

字串不可為 NULL ,而且應該包含與使用 IVssBackupComponents::AddComponent 新增至備份集時所使用的相同元件名稱。

[in] bSelectedForRestore

如果此參數的值為 true,則已選取要還原的元件。 如果值為 false,則尚未選取選取的元件進行還原。

傳回值

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

意義
S_OK
已成功指出已選取要還原的指定元件。
E_INVALIDARG
其中一個參數值無效。
E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_BAD_STATE
備份元件物件未初始化、在還原作業期間呼叫此方法,或未在正確的順序內呼叫此方法。
VSS_E_OBJECT_NOT_FOUND
所選取的元件不存在於備份元件檔中,或對應至該元件的寫入器即時實例未在系統上執行。
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改用。

備註

SetSelectedForRestore 只對在元件模式中發生的還原有意義。

SetSelectedForRestore 只能針對使用 IVssBackupComponents::AddComponents 在備份時明確新增至備份文件的元件呼叫。 若要還原已隱含選取的元件做為元件集的一部分,則必須在新增至檔的最接近上階元件上呼叫 SetSelectedForRestore 來完成。 如果只還原此元件的數據,應該透過 IVssBackupComponents::AddRestoreSubcomponent 來完成;只有在元件可選取還原 (請參閱 使用可選取性和邏輯路徑) 時,才能完成此動作。

這個方法必須在 IVssBackupComponents::P reRestore 之前呼叫。

規格需求

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

另請參閱

IVssBackupComponents

IVssBackupComponents::P reRestore

IVssComponent::IsSelectedForRestore

VSS_COMPONENT_TYPE