共用方式為


CVssWriterEx::OnIdentifyEx 方法 (vswriter.h)

會傳回 IVssCreateWriterMetadataEx 物件的指標。

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

語法

bool OnIdentifyEx(
  [in] IVssCreateWriterMetadataEx *pMetadata
);

參數

[in] pMetadata

IVssCreateWriterMetadataEx物件的指標。

傳回值

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

此方法的任何其他實作都必須傳回 true ,但發生嚴重錯誤的情況除外。 如果發生嚴重錯誤,方法應該會傳回 false

在發生失敗的所有情況下,包括非嚴重錯誤,方法應該將詳細專案寫入事件記錄檔,以報告失敗的確切原因。

備註

OnIdentifyEx方法與OnIdentify方法相同,不同之處在于它會傳回pMetadata參數中的IVssCreateWriterMetadataEx介面指標,而不是IVssCreateWriterMetadata介面指標。 寫入器可以覆寫 OnIdentifyOnIdentifyEx,但不能同時覆寫這兩者。

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

寫入器不應該從OnIdentifyOnIdentifyEx方法呼叫CVssWriter::SetWriterFailure方法。

如果這個方法呼叫 CVssWriterEx2::GetSessionId 方法,則必須在呼叫此方法的相同執行緒中執行此動作。 如需詳細資訊,請參閱 寫入器事件處理

為了回應另一個應用程式所產生的 Identify 事件,寫入器會呼叫 OnIdentifyEx 來建立 寫入器元資料檔案 ,其中包含其使用 IVssCreateWriterMetadataEx 介面所管理之元件的相關資訊。

產生 Identify 事件的應用程式接著會擷取 寫入器元資料檔案 ,並使用 IVssExriterMetadata 介面檢查寫入器的元件資訊。

在組成備份或還原順序的事件之前,需要 識別 事件。 因此, 通常會呼叫 OnIdentifyEx 來處理 Identify 事件,以回應要求者的 IVssBackupComponents::GatherWriterMetadata 作為備份或還原作業的一部分。

不過, 識別 事件本身不是組成備份或還原順序的事件序列的一部分,而且 VSS 服務不會防止 產生識別 事件,即使備份或還原順序正在進行也一樣。 例如,VSS 管理應用程式會使用 Identify 事件來判斷及顯示系統上寫入器的狀態。

基於這個理由,寫入器絕對不應該使用其 OnIdentifyEx 的實作,其方式如下:

  • 做為其處理備份或還原順序的開頭
  • 設定或維護寫入器狀態的相關資訊
如需寫入器與事件互動的詳細資訊,請參閱 寫入器事件處理

PrepareForBackupPrepareForSnapshotPostSnapshot 事件期間,寫入器可以使用 GetIdentifyInformation 方法來取得寫入器先前所回報 OnIdentifyEx 方法的中繼資料。

PMetadata參數指向的IVssCreateWriterMetadataEx物件的生命週期是由 VSS 基礎結構所管理。

規格需求

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

另請參閱

CVssWriterEx

CVssWriterEx::GetIdentifyInformation

IVssCreateWriterMetadataEx