IVssDifferentialSoftwareSnapshotMgmt3::GetVolumeProtectLevel 方法 (vsmgmt.h)

取得指定磁碟區的陰影複製保護層級和狀態。

語法

HRESULT GetVolumeProtectLevel(
  [in]  VSS_PWSZ                   pwszVolumeName,
  [out] VSS_VOLUME_PROTECTION_INFO *protectionLevel
);

參數

[in] pwszVolumeName

磁碟區的名稱。 這個參數是必要的,而且不能是 NULL

名稱必須是下列其中一種格式,且必須包含尾端反斜杠 (\) :

  • 掛接資料夾的路徑,例如 Y:\MountX\
  • 驅動器號,例如 D:\
  • 格式為 \\?\Volume{GUID}\ 的磁碟區 GUID 路徑 (,其中 GUID 會識別磁碟區)

[out] protectionLevel

呼叫端配置的緩衝區位址,該緩衝區會接收包含磁碟區陰影複製保護層級相關信息 的VSS_VOLUME_PROTECTION_INFO 結構。

傳回值

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

意義
S_OK
已成功查詢陰影複製保護層級。
E_ACCESSDENIED
0x80070005L
呼叫端不是系統管理員。
E_INVALIDARG
0x80070057L
其中一個參數值無效。
E_NOTIMPL
0x80000001L
磁碟區的提供者不支援陰影複製保護。
VSS_E_PROVIDER_VETO
0x80042306L
發生預期的提供者錯誤。 錯誤碼會記錄在事件記錄檔中。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理
VSS_E_OBJECT_NOT_FOUND
0x80042308L
找不到指定的磁碟區。

備註

GetVolumeProtectLevel 方法會取得磁碟區目前保護等級的相關信息。 如果磁碟區處於錯誤狀態,則VSS_VOLUME_PROTECTION_INFO結構的m_protectionFault成員包含目前的保護錯誤,而m_failureStatus成員包含磁碟區處於錯誤狀態的原因。 如果磁碟區不是處於錯誤狀態, 則m_protectionFaultm_failureStatus 成員會是零。

如果 protectionLevel 參數的值 VSS_PROTECTION_LEVEL_SNAPSHOT,要求者必須使用 IVssDifferentialSoftwareSnapshotMgmt::AddDiffArea 方法, (差異區域) 關聯設定陰影複製儲存區域。

規格需求

需求
最低支援的用戶端 都不支援
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 vsmgmt.h

另請參閱

IVssDifferentialSoftwareSnapshotMgmt3

IVssDifferentialSoftwareSnapshotMgmt3::SetVolumeProtectLevel