SET_BAND_LOCATION_PARAMETERS 结构 (ehstorbandmgmt.h)

SET_BAND_LOCATION_PARAMETERS 结构指定参数,用于为IOCTL_EHSTOR_BANDMGMT_SET_BAND_LOCATION请求的存储设备上的带区设置位置属性。

语法

typedef struct _SET_BAND_LOCATION_PARAMETERS {
  ULONG         StructSize;
  ULONG         BandId;
  LARGE_INTEGER BandStart;
  ULONG         AuthKeyOffset;
  ULONG         BandLocationInfoOffset;
} SET_BAND_LOCATION_PARAMETERS, *PSET_BAND_LOCATION_PARAMETERS;

成员

StructSize

此结构的大小(以字节为单位)。 设置为 sizeof (SET_BAND_LOCATION_PARAMETERS) 。

BandId

要为其返回信息的单个波段的标识符。 使用 BandId 选择单个波段时,BandSize 必须为 0。若要使用 BandStartBandSize 而不是 BandId 来选择一个波段,请将 BandId = (ULONG) –1。

BandStart

用于开始带搜索的存储设备上的起始字节位置。 尝试在 BandStart 或之后匹配 某个波段。

AuthKeyOffset

包含带的授权密钥 的AUTH_KEY 结构的偏移量(以字节为单位)。 偏移量从 SET_BAND_LOCATION_PARAMETERS的开头开始。 AUTH_KEYehstorbandmgmt.h 中声明如下。

typedef struct _AUTH_KEY
{
    ULONG   KeySize;
    UCHAR   Key[ANYSIZE_ARRAY];
} AUTH_KEY;

KeySize

Key 处密钥数据的键大小(以字节为单位)。 如果 KeySize 设置为 0,则使用默认键。

密钥

包含键数据的可变长度字节数组。

若要指定带区的默认授权密钥,请将 AuthKeyOffset = EHSTOR_BANDMGR_NO_KEY

BandLocationInfoOffset

BAND_LOCATION_INFO 结构的偏移量(以字节为单位)。 偏移量从 SET_BAND_LOCATION_PARAMETERS的开头开始。

注解

BandID 提供带区选择的优先级。 如果 BandID 大于 0 且 BandID 小于 BAND_MANAGEMENT_CAPABILITIESMaxBandCount 成员,则 BandID 用作带匹配的唯一选择条件。 如果 BandID == –1,则将 BandStart 用作选择带的匹配条件。 如果没有与任一选择条件匹配的带区,则会在 IoStatus 块中返回 IOCTL_EHSTOR_BANDMGMT_SET_BAND_LOCATION STATUS_INVALID_PARAMETER

如果 BandIDBandStart 都设置为 –1,则 IOCTL_EHSTOR_BANDMGMT_SET_BAND_LOCATION 请求将更改全局波段的属性。

要求

要求
最低受支持的客户端 从 Windows 8 开始可用
标头 ehstorbandmgmt.h (包括 EhStorBandMgmt.h)

另请参阅

BAND_LOCATION_INFO

BAND_MANAGEMENT_CAPABILITIES

IOCTL_EHSTOR_BANDMGMT_SET_BAND_LOCATION