IVssHardwareSnapshotProviderEx::OnLunStateChange 方法 (vsprov.h)

VSS 服务调用此方法以通知硬件提供程序 LUN 状态更改。

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

语法

HRESULT OnLunStateChange(
  [in] VDS_LUN_INFORMATION *pSnapshotLuns,
  [in] VDS_LUN_INFORMATION *pOriginalLuns,
  [in] DWORD               dwCount,
  [in] DWORD               dwFlags
);

参数

[in] pSnapshotLuns

指向 dwCountVDS_LUN_INFORMATION 结构的数组的指针,每个构成卷影复制卷的 LUN 对应一个。

[in] pOriginalLuns

指向 dwCountVDS_LUN_INFORMATION 结构的数组的指针,每个构成原始卷的 LUN 对应一个。

[in] dwCount

pSnapshotLuns 数组中的元素数。 这也是 pOriginalLuns 数组中的元素数。

[in] dwFlags

_VSS_HARDWARE_OPTIONS标志的位掩码,这些标志提供有关卷影复制 LUN 所经历的状态更改的信息。 下表介绍了如何在此参数中使用每个标志。

含义
VSS_ONLUNSTATECHANGE_NOTIFY_READ_WRITE
0x00000100
卷影复制 LUN 将永久转换为读写。
VSS_ONLUNSTATECHANGE_NOTIFY_LUN_PRE_RECOVERY
0x00000200
卷影副本 LUN 将暂时转换为读写,并即将进行 TxF 恢复或 VSS 自动恢复。
VSS_ONLUNSTATECHANGE_NOTIFY_LUN_POST_RECOVERY
0x00000400
卷影副本 LUN 刚刚经历 TxF 恢复或 VSS 自动恢复,并已转换回只读。
VSS_ONLUNSTATECHANGE_DO_MASK_LUNS
0x00000800
卷影副本 LUN 必须从当前计算机屏蔽,但不能删除。

返回值

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

返回代码/值 说明
S_OK
0x00000000L
操作已成功完成。
E_OUTOFMEMORY
0x8007000EL
内存不足或其他系统资源不足。
E_INVALIDARG
0x80070057L
其中一个参数值无效。
VSS_E_PROVIDER_VETO
0x80042306L
发生意外的提供程序错误。 如果返回此错误,则必须在应用程序事件日志中的条目中描述错误,为用户提供有关如何解决问题的信息。

要求

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

另请参阅

IVssHardwareSnapshotProviderEx