IVssHardwareSnapshotProvider::AreLunsSupported 方法 (vsprov.h)
AreLunsSupported 方法确定硬件提供程序是否支持为卷贡献的所有 LUN 创建卷影副本。 VSS 为添加到卷影副本集的每个卷调用 AreLunsSupported 方法。 在调用此方法之前,VSS 会确定对卷做出贡献的 LUN。
对于特定卷,每个 LUN 只能贡献一次。 特定 LUN 可能会影响多个卷。
语法
HRESULT AreLunsSupported(
[in] LONG lLunCount,
[in] LONG lContext,
[in] VSS_PWSZ *rgwszDevices,
[in, out] VDS_LUN_INFORMATION *pLunInformation,
[out] BOOL *pbIsSupported
);
参数
[in] lLunCount
参与此卷影复制卷的 LUN 计数。
[in] lContext
当前卷影复制集的卷影复制上下文由 _VSS_VOLUME_SNAPSHOT_ATTRIBUTES 枚举中的标志位掩码枚举。 如果设置了 VSS_VOLSNAP_ATTR_TRANSPORTABLE 标志,则卷影副本集是可传输的。
[in] rgwszDevices
与要复制的 LUN 对应的设备列表。
[in, out] pLunInformation
lLunCountVDS_LUN_INFORMATION结构的数组,每个 LUN 对应一个构成此卷影副本卷的 LUN。
[out] pbIsSupported
指向 BOOL 值的指针。 如果卷影复制支持所有设备,则提供程序应在 pbIsSupported 指向的位置存储 TRUE 值。
返回值
此方法可以返回其中一个值。
返回代码/值 | 说明 |
---|---|
|
操作已成功完成。 |
|
内存不足或其他系统资源。 |
|
其中一个参数值无效。 |
|
发生意外的提供程序错误。 提供程序必须在应用程序事件日志中报告事件,为用户提供有关如何解决问题的信息。 |
注解
如果硬件子系统支持 SCSI 查询数据和重要产品数据页 80 (设备序列号) 和页 83 (设备标识) 准则,则提供程序无需修改 pLunInformation 数组中的结构。
在任何情况下,AreLunsSupported 方法都不应修改 pLunInformation 数组中任何VDS_LUN_INFORMATION结构的 m_rgInterconnects成员的值。
如果提供程序支持为 pLunInformation 数组中的所有 LUN 创建硬件卷影副本,则应在 pbIsSupported 参数指向的 BOOL 值中返回 TRUE。 如果提供程序不支持一个或多个 LUN 的硬件卷影副本,则必须将此 BOOL 值设置为 FALSE。
如果无法创建卷影副本,则提供程序不得同意创建卷影副本,即使问题只是暂时性的。 如果暂时性条件(如资源不足)导致提供程序无法在调用 AreLunsSupported 时使用一个或多个 LUN 创建卷影副本,则提供程序必须将 BOOL 值设置为 FALSE。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 无受支持的版本 |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | vsprov.h |