IVssSoftwareSnapshotProvider::D eleteSnapshots 方法 (vsprov.h)

刪除一或多個陰影複製或陰影複製集。

語法

HRESULT DeleteSnapshots(
  [in]  VSS_ID          SourceObjectId,
  [in]  VSS_OBJECT_TYPE eSourceObjectType,
  [in]  BOOL            bForceDelete,
  [out] LONG            *plDeletedSnapshots,
  [out] VSS_ID          *pNondeletedSnapshotID
);

參數

[in] SourceObjectId

要刪除之陰影複製或陰影複製集的標識碼。

[in] eSourceObjectType

要刪除的物件類型。 此參數的值是VSS_OBJECT_SNAPSHOT或VSS_OBJECT_SNAPSHOT_SET。

[in] bForceDelete

如果此參數的值為 TRUE,提供者將會執行刪除陰影複製集內陰影複製或陰影複製的所有可能專案。 如果為 FALSE,將不會進行任何額外的工作。

[out] plDeletedSnapshots

接收已刪除陰影複製數目的變數指標。

[out] pNondeletedSnapshotID

如果發生錯誤,此參數會收到無法刪除之第一個陰影複製標識碼的指標。 否則,它會指向GUID_NULL。

傳回值

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

意義
S_OK
已成功刪除陰影複製。
E_ACCESSDENIED
呼叫端沒有足夠的備份許可權,或不是系統管理員。
E_INVALIDARG
其中一個參數值無效。
E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_OBJECT_NOT_FOUND
找不到指定的陰影複製。
VSS_E_PROVIDER_VETO
提供者錯誤。 提供者在事件記錄檔中記錄錯誤。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理

備註

陰影複製集中的多個陰影複製會循序刪除。 如果在其中一個個別刪除期間發生錯誤, DeleteSnapshots 會立即傳回;不會嘗試刪除任何剩餘的陰影複製。 未刪除陰影複製的VSS_ID會在 pNondeletedSnapshotID 中傳回。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 vsprov.h
程式庫 VssApi.lib

另請參閱

IVssSoftwareSnapshotProvider