IVssSoftwareSnapshotProvider::IsVolumeSupported 方法 (vsprov.h)

确定提供程序是否支持指定卷上的卷影副本。

语法

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

参数

[in] pwszVolumeName

包含卷名称的以 Null 结尾的宽字符串。 名称必须使用以下格式之一,并且必须包含尾随反斜杠 (\) :

  • 装载文件夹的路径,例如 Y:\MountX\
  • 驱动器号,例如 D:\
  • 格式为 \\?\Volume{GUID}\ (的卷 GUID 路径,其中 GUID 标识卷)

[out] pbSupportedByThisProvider

如果指定卷上支持卷影副本,则此参数接收 TRUE ,否则 为 FALSE

返回值

下面是此方法的有效返回代码。

含义
S_OK
已成功返回请求的信息。
E_ACCESSDENIED
调用方没有足够的备份权限或不是管理员。
E_INVALIDARG
其中一个参数值无效。
VSS_E_NESTED_VOLUME_LIMIT
指定的卷嵌套太深,无法参与 VSS 操作。

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支持此返回代码。

E_OUTOFMEMORY
调用方内存不足或其他系统资源。
VSS_E_OBJECT_NOT_FOUND
找不到指定的卷。
VSS_E_PROVIDER_VETO
提供程序错误。 提供程序在事件日志中记录了错误。 有关详细信息,请参阅 VSS 下的事件和错误处理
VSS_E_UNEXPECTED
意外错误。 错误代码记录在错误日志文件中。 有关详细信息,请参阅 VSS 下的事件和错误处理

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

备注

如果可以在给定卷上创建卷影副本, 则 IsVolumeSupported 方法将返回 TRUE ,即使当前配置不允许在该卷上创建卷影副本。

例如,如果在给定卷 (上已达到卷影副本的最大数目,因此无法在该卷) 上创建更多卷影副本,则 该方法仍将指示可以卷影复制卷。

无法为嵌套在另一 VHD 中的虚拟硬盘 (VHD) 调用此方法。

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

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 vsprov.h
Library VssApi.lib

另请参阅

IVssSoftwareSnapshotProvider