IVssHardwareSnapshotProvider::BeginPrepareSnapshot 方法 (vsprov.h)

对于添加到卷影副本集的每个卷影副本,将调用 BeginPrepareSnapshot 方法。

注意 仅在 Windows Server 操作系统上支持硬件提供程序。
 

语法

HRESULT BeginPrepareSnapshot(
  [in]      VSS_ID              SnapshotSetId,
  [in]      VSS_ID              SnapshotId,
  [in]      LONG                lContext,
  [in]      LONG                lLunCount,
  [in]      VSS_PWSZ            *rgDeviceNames,
  [in, out] VDS_LUN_INFORMATION *rgLunInformation
);

参数

[in] SnapshotSetId

卷影副本集标识符。

[in] SnapshotId

要创建的卷影副本的标识符。

[in] lContext

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES枚举的当前卷影副本集的卷影复制上下文。

[in] lLunCount

影响此卷影复制卷的 LUN 计数。

[in] rgDeviceNames

指向指向字符串的 lLunCount 指针数组的指针,每个字符串包含要卷影复制的 LUN 的名称。

[in, out] rgLunInformation

指向 lLunCountVDS_LUN_INFORMATION 结构的数组的指针,每个 LUN 对应一个构成此卷影副本卷的 LUN。

返回值

此方法可以返回其中一个值。

返回代码/值 说明
S_OK
0x00000000L
操作已成功完成。
E_OUTOFMEMORY
0x8007000EL
内存不足或其他系统资源不足。
E_INVALIDARG
0x80070057L
其中一个参数值无效。
VSS_E_MAXIMUM_NUMBER_OF_VOLUMES_REACHED
0x80042312L
提供程序已达到它可以支持的最大卷数。
VSS_E_NESTED_VOLUME_LIMIT
指定的卷嵌套太深,无法参与 VSS 操作。

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

VSS_E_PROVIDER_VETO
0x80042306L
发生意外的提供程序错误。 提供程序必须在应用程序事件日志中报告事件,为用户提供有关如何解决问题的信息。
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER
0x8004230EL
提供程序不支持此卷。
VSS_E_UNSUPPORTED_CONTEXT
0x8004231BL
不支持 lContext 指定的上下文。

注解

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

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

要求

要求
最低受支持的客户端 无受支持的版本
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 vsprov.h

另请参阅

IVssHardwareSnapshotProvider

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES