ENUMERATE_BANDS_PARAMETERS 结构 (ehstorbandmgmt.h)
ENUMERATE_BANDS_PARAMETERS结构用于选择要从IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS请求返回的带信息条目。
语法
typedef struct _ENUMERATE_BANDS_PARAMETERS {
ULONG StructSize;
ULONG Flags;
ULONG Reserved;
ULONG BandId;
LARGE_INTEGER BandStart;
LARGE_INTEGER BandSize;
} ENUMERATE_BANDS_PARAMETERS, *PENUMERATE_BANDS_PARAMETERS;
成员
StructSize
此结构的大小(以字节为单位)。 将 设置为 sizeof (ENUMERATE_BANDS_PARAMETERS) 。
Flags
带枚举标志。 此值是以下内容的按位 OR 组合。
值 | 含义 |
---|---|
|
返回所有带。 设置此标志后,将忽略 BandId、 BandStart 和 BandSize 成员。 |
|
在 BAND_TABLE_ENTRY的 SecurityInfo 成员中包含媒体加密算法信息。 |
Reserved
保留。
BandId
要返回其信息的单个波段的标识符。 使用 BandId 选择单个波段时,BandSize 必须为 0。若要使用 BandStart 和 BandSize 而不是 BandId 选择波段,请将 BandId = (ULONG) –1。
BandStart
用于开始带搜索的存储设备上的起始字节位置。 尝试在 BandStart 或 BandStart 之后匹配一个乐队。
BandSize
可选的带大小匹配值(以字节为单位)。 如果 BandSize == 0 且 BandId == –1,则 BandStart 是用于选择波段的唯一匹配值。 否则,将完全选择 BandStart 处或之后的带区以及匹配的 BandSize 。
注解
如果未在 Flags 中设置ENUMBANDS_ENUM_ALL_BANDS,则会尝试选择以匹配单个波段。 基于 BandID、BandStart 和 BandSize 中的值进行单个波段匹配。 优先于 BandID 进行波段选择。 如果 bandID> 0 和 BandID<MaxBandCount 成员BAND_MANAGEMENT_CAPABILITIES如果 BandID 大于 0 且 BandID 小于 BAND_MANAGEMENT_CAPABILITIES 的 MaxBandCount 成员,则 BandID 用作带匹配的唯一选择条件。 如果 BandID == –1,则 使用 BandStart 和 BandSize 作为匹配条件来选择波段。
当 BandStart 和 BandSize 用于匹配某个波段时,将返回在 BandStart 位置或之后配置的第一个波段,其确切大小为 BandSize 。 如果 BandSize == 0,则 当 BandStart 有效时,则返回在 BandStart 处或之后配置的第一个波段。
如果 BandID == 0 或未配置任何波段,并且 Flags 未设置为 ENUMBANDS_ENUM_ALL_BANDS,则返回整个设备的全局带。
BandStart 和 BandSize 无效,除非它们的值(以字节为单位)是基础存储设备扇区大小的确切倍数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从Windows 8开始可用 |
标头 | ehstorbandmgmt.h (包括 EhStorBandMgmt.h) |