CVssWriter::OnPreRestore 方法 (vswriter.h)

OnPreRestore 方法是由在 PreRestore 事件之後的寫入器呼叫。 這個方法可用來讓寫入器處於支援還原的狀態,例如讓資料庫服務離線,以及在正在還原檔案的要求者的備份元件檔中進行修改 (,例如將還原目標設定為覆寫原始還原方法) 。

OnPreRestore 是虛擬方法。 它是由 CVssWriter 基類實作,但可由衍生類別覆寫。

語法

bool OnPreRestore(
  [in] IVssWriterComponents *pComponent
);

參數

[in] pComponent

IVssWriterComponents 物件的具現化指標,其中包含要求者備份元件檔中與目前寫入器相關聯的元件。

傳回值

如同基類所實作, OnPreRestore 一律會傳回 true

此方法的任何其他實作都必須傳回 true ,但發生嚴重錯誤的情況除外。 如果發生嚴重錯誤,方法必須呼叫 CVssWriter::SetWriterFailure 方法,才能提供失敗的描述,然後再傳回 false。 如果發生非嚴重錯誤,方法仍應呼叫 SetWriterFailure ,但傳回 true。 如果錯誤是由暫時性問題所造成,方法應該在 對 SetWriterFailure 的呼叫中指定VSS_E_WRITERERROR_RETRYABLE。

在發生失敗的所有情況下,方法應該將事件寫入事件記錄檔,以報告失敗的確切原因。

備註

PreRestore 事件會在實際還原備份數據之前發生。 這是寫入器判斷正在還原的項目的機會。

CVssWriter 基類的預設實作會傳回 true,而不會執行任何其他作業。

這個方法可讓寫入器判斷要還原的內容、擷取預存備份元件檔中儲存的私人元數據,以及更新該數據。

寫入器永遠不會從這個方法或任何其他 CVssWriter (Ex) ::OnXxx 回呼方法擲回例外狀況。

如果此方法呼叫 CVssWriterEx2::GetSessionIdCVssWriter::SetWriterFailure 或 CVssWriterEx2::SetWriterFailureEx 方法,則必須在呼叫此方法的相同線程中執行此動作。 如需詳細資訊,請參閱 寫入器事件處理

規格需求

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

另請參閱

CVssWriter

CVssWriter::OnPostSnapshot

CVssWriter::OnPrepareBackup

CVssWriter::SetWriterFailure

IVssWriterComponents