IVssBackupComponents::IsVolumeSupported 方法 (vsbackup.h)

IsVolumeSupported 方法會決定指定的提供者是否支援指定磁碟區或遠端檔案共用上的陰影複製。

語法

HRESULT IsVolumeSupported(
  [in]  VSS_ID   ProviderId,
  [in]  VSS_PWSZ pwszVolumeName,
  [out] BOOL     *pbSupportedByThisProvider
);

參數

[in] ProviderId

提供者標識碼。 如果值為 GUID_NULL,IsVolumeSupported 會檢查任何提供者是否支援磁碟區或遠端檔案共用。

[in] pwszVolumeName

遠端檔案共用的磁碟區名稱或 UNC 路徑。 名稱或 UNC 路徑必須是下列其中一種格式,且必須包含尾端反斜杠 (\) :

  • 掛接資料夾的路徑,例如 Y:\MountX\
  • 驅動器號,例如 D:\
  • 格式為 \\?\Volume{GUID}\ 的磁碟區 GUID 路徑 (,其中 GUID 會識別磁碟區)
  • 指定遠端檔案共用的 UNC 路徑,例如 \\Clusterx\Share1\

[out] pbSupportedByThisProvider

如果指定的磁碟區或遠端檔案共享支援陰影複製,則呼叫端配置的變數位址,否則為 FALSE

傳回值

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

意義
S_OK
已成功傳回提供者支持資訊。
E_ACCESSDENIED
呼叫端沒有足夠的備份許可權,或不是系統管理員。
VSS_E_NESTED_VOLUME_LIMIT
指定的磁碟區巢狀太深而無法參與 VSS 作業。

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此傳回碼。

E_OUTOFMEMORY
呼叫端記憶體不足或其他系統資源。
VSS_E_BAD_STATE
備份元件物件未初始化、此方法已在還原作業期間呼叫,或此方法未在正確的順序內呼叫。
VSS_E_OBJECT_NOT_FOUND
找不到或無法使用指定的磁碟區或遠端檔案共用。
VSS_E_UNEXPECTED
非預期的錯誤。 錯誤碼會記錄在錯誤記錄檔中。 如需詳細資訊,請參閱 VSS 下的事件和錯誤處理

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 在 Windows Server 2008 R2 和 Windows 7 之前,不支援此值。 改用E_UNEXPECTED。

備註

Windows 7、Windows Server 2008 R2、Windows Vista、Windows Server 2008、Windows XP 和 Windows Server 2003: 在 Windows 8 和 Windows Server 2012 之前,不支援遠端檔案共用。

IsVolumeSupported 如果可以在指定的磁碟區上建立陰影複製,則會傳回 TRUE ,即使目前的設定不允許在目前時間在該磁碟區上建立陰影複製也一樣。

例如,如果指定的磁碟區上已達到陰影複製數目上限 (,因此無法在該磁碟區上建立更多陰影複製) ,此方法仍會指出磁碟區可以陰影複製。

注意 如需可在磁碟區上建立之陰影複製數目上限的詳細資訊,請參閱登錄機碼中的 MaxShadowCopies 專案 ,以及備份與還原的值
 
無法針對位於另一個 VHD 內巢狀的虛擬硬碟 (VHD) 呼叫此方法。

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援 VHD。

規格需求

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

另請參閱

IVssBackupComponents

IVssBackupComponents::AddToSnapshotSet