MSFT_StoragePool 类的 SetAttributes 方法

设置或更改存储池对象的属性值。

语法

UInt32 SetAttributes(
  [in]  Boolean IsReadOnly,
  [in]  Boolean ClearOnDeallocate,
  [in]  Boolean IsPowerProtected,
  [in]  UInt16  RepairPolicy,
  [in]  UInt16  RetireMissingPhysicalDisks,
  [in]  UInt16  ThinProvisioningAlertThresholds[],
  [out] String  ExtendedStatus
);

参数

IsReadOnly [in]

指示存储池的配置是否为只读。 如果 为 TRUE,则存储池将不允许修改其属性或其任何关联的元素。

ClearOnDeallocate [in]

如果 为 TRUE,则在取消映射或从存储池中删除时,物理磁盘应为零 (清除所有数据) 。 如果 为 FALSE,则行为是子系统定义的。

IsPowerProtected [in]

如果 为 TRUE,则此池中的磁盘能够容忍断电而不会丢失数据。 例如,在断开外部电源后,它们会自动将易失性缓冲区刷新到非易失性介质。

RepairPolicy [in]

操作系统如何修复此存储池的虚拟磁盘。

含义
2 顺序 - 一次处理一个分配板。 修复需要更长的时间,但对 I/O 负载的影响较小。
3 并行 - 并行处理尽可能多的分配板。 修复时间已最小化,但会对 I/O 负载产生重大影响。

RetireMissingPhysicalDisks [in]

指定存储子系统是否会自动停用此存储池中缺少的物理磁盘,并将其替换为热备用磁盘或存储池中可用的其他物理磁盘。

自动 (1)

始终 (2)

从不 (3)

ThinProvisioningAlertThresholds [in]

表示各种稀疏 (精简预配) 阈值的百分比值数组。 每个值的最小值为 1;最大值为 100。 当虚拟磁盘使用量超过这些阈值之一时,将向所有订阅的客户端广播通知。

ExtendedStatus [out]

包含嵌入 MSFT_StorageExtendedStatus 对象的字符串。

此参数允许存储提供程序返回特定于实现的扩展 () 错误信息。

返回值

成功 (0)

不支持 (1)

未指定的错误 (2)

超时 (3)

失败 (4)

参数 (5) 无效

访问被拒绝 (40001)

没有足够的资源来完成操作。 (40002)

无法连接到存储提供程序。 (46000)

存储提供程序无法连接到存储子系统。 (46001)

原始存储池不支持此操作。 (48000)

存储池无法完成操作,因为其运行状况或运行状态不允许它。 (48006)

存储池无法完成操作,因为其配置是只读的。 (48007)

指定的精简预配警报阈值数超出了此存储池的限制。 (48009)

注解

并非所有参数都必须指定,并且只会更新指定的参数。

IsReadOnly 属性设置为 TRUE 时,它必须单独设置,并且必须是最后一个属性集。

如果要设置 IsReadOnlyClearOnDeallocateIsPowerProtected 属性:

  1. 调用此方法并为 ClearOnDeallocateIsPowerProtected 参数指定适当的值,并为 IsReadOnly 参数指定 FALSE
  2. 如果 IsReadOnly 属性应为 TRUE,请再次调用此方法并为 IsReadOnly 参数指定 TRUE

要求

要求
最低受支持的客户端 Windows 8 [仅限桌面应用]
最低受支持的服务器 Windows Server 2012 [仅限桌面应用]
命名空间 Root\Microsoft\Windows\Storage
MOF Storagewmi.mof

另请参阅

MSFT_StoragePool