IVssBackupComponents::IsVolumeSupported 方法 (vsbackupup.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
调用方分配的变量的地址,如果指定卷或远程文件共享上支持卷影副本,则接收 TRUE ;否则为 FALSE 。
返回值
下面是此方法的有效返回代码。
值 | 含义 |
---|---|
|
已成功返回提供程序支持信息。 |
|
调用方没有足够的备份权限或不是管理员。 |
|
指定的卷嵌套太深,无法参与 VSS 操作。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支持此返回代码。 |
|
调用方内存不足或其他系统资源。 |
|
备份组件对象未初始化,在还原操作期间调用了此方法,或者尚未在正确的顺序中调用此方法。 |
|
找不到指定的卷或远程文件共享或不可用。 |
|
意外错误。 错误代码记录在错误日志文件中。 有关详细信息,请参阅 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,即使当前配置不允许在该卷上创建卷影副本。
例如,如果在给定卷 (上已达到卷影副本的最大数目,因此无法在该卷) 上创建更多卷影副本,则 该方法仍将指示可以卷影复制卷。
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) |
Library | VssApi.lib |