IVssBackupComponentsEx::GetWriterMetadataEx 方法 (vsbackup.h)
GetWriterMetadataEx 方法會傳回系統上執行之特定寫入器實例的元數據。
語法
HRESULT GetWriterMetadataEx(
[in] UINT iWriter,
[out] VSS_ID *pidInstance,
[out] IVssExamineWriterMetadataEx **ppMetadata
);
參數
[in] iWriter
要擷取其元數據的寫入器索引。 此參數的值是介於 0 到 n–1 的整數,其中 n 是目前系統上的寫入器總數。 n 的值是由 IVssBackupComponents::GetWriterMetadataCount 方法傳回。
[out] pidInstance
呼叫端配置的變數位址,該變數會接收收集元數據之寫入器的實例識別碼。
[out] ppMetadata
包含所傳回元數據之 IVssExriterMetadataEx 對象的實例的雙間接指標。
傳回值
以下是這個方法的有效傳回碼。
值 | 意義 |
---|---|
|
已成功傳回 IVssEx surveyWriterMetadataEx 介面物件的指標。 |
|
其中一個參數值無效。 |
|
呼叫端記憶體不足或其他系統資源。 |
|
備份元件物件未初始化、在還原作業期間呼叫此方法,或未在正確的順序內呼叫此方法。 |
|
XML 檔無效。 請檢查事件記錄檔以取得詳細數據。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理。 |
|
iWriter 參數不會指向有效的寫入器。 |
|
非預期的錯誤。 錯誤碼會記錄在錯誤記錄檔中。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 在 Windows Server 2008 R2 和 Windows 7 之前,不支援此值。 E_UNEXPECTED改用。 |
備註
GetWriterMetadataEx 與 IVssBackupComponents::GetWriterMetadata 方法相同,不同之處在於它會傳回 ppMetadata 參數中的 IVssEx,WriterMetadataEx 介面指標,而不是 IVssEx,WriterMetadata 介面指標。
要求者必須呼叫異步 IVssBackupComponents::GatherWriterMetadata 方法,並在呼叫 GetWriterMetadataEx 之前等候它完成。
雖然在還原或備份作業之前必須呼叫 GatherWriterMetadata 方法,但通常不會針對還原呼叫 GetWriterMetadataEx 。
備份作業期間擷 (取的元件資訊) 使用 IVssExriterMetadata::GetComponent 方法擷取的元件資訊,其中 IVssEx 的Ex,MetadataEx 介面已由 GetWriterMetadataEx 傳回,來自即時寫入器的寫入器元數據檔。
這與 GetWriterComponents (在還原作業期間所傳回的資訊) 相反,這是透過呼叫 IVssBackupComponents::AddComponent 方法儲存在備份元件檔中。
當這個方法的呼叫端完成元數據存取時,它必須呼叫 IUnknown::Release。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008、Windows Server 2003 SP1 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | vsbackup.h (包括 VsBackup.h、Vss.h、VsWriter.h) |
程式庫 | VssApi.lib |