WRITE_USING_TOKEN_HEADER 结构 (storport.h)

WRITE_USING_TOKEN_HEADER 结构描述卸载写入数据操作的目标数据位置。 此结构描述的卸载写入数据操作与数据 (ROD) 的标记表示形式相关联。

语法

typedef struct {
  UCHAR WriteUsingTokenDataLength[2];
  UCHAR Immediate : 1;
  UCHAR Reserved1 : 7;
  UCHAR Reserved2[5];
  UCHAR BlockOffsetIntoToken[8];
  UCHAR Token[BLOCK_DEVICE_TOKEN_SIZE];
  UCHAR Reserved3[6];
  UCHAR BlockDeviceRangeDescriptorListLength[2];
  UCHAR BlockDeviceRangeDescriptor[ANYSIZE_ARRAY];
} WRITE_USING_TOKEN_HEADER, *PWRITE_USING_TOKEN_HEADER;

成员

WriteUsingTokenDataLength[2]

此结构的长度以 Immediate 参数开头,包括 BlockDeviceRangeDescriptor 数组的所有元素。

Immediate

如果已设置,在收到并验证令牌 ROD 和范围描述符后,将立即返回 WRITE USING TOKEN 命令的状态。 否则,将在完成所有命令处理后返回状态。

Reserved1

保留位。

Reserved2[5]

保留。

BlockOffsetIntoToken[8]

用于标记的 ROD 中的偏移量(以逻辑块为单位),指示卸载写入数据操作的源数据的开始时间。

Token[BLOCK_DEVICE_TOKEN_SIZE]

由先前的 POPULATE TOKEN 命令操作创建的令牌。

Reserved3[6]

保留。

BlockDeviceRangeDescriptorListLength[2]

BlockDeviceRangeDescriptor 数组中所有BLOCK_DEVICE_RANGE_DESCRIPTOR结构的长度(以字节为单位)。

BlockDeviceRangeDescriptor[ANYSIZE_ARRAY]

描述卸载写入数据传输的目标数据块的 BLOCK_DEVICE_RANGE_DESCRIPTOR 结构数组。

注解

所有多字节值都采用大 endian 格式。 在设置之前,必须从当前平台的 endian 格式转换这些值。

要求

要求
最低受支持的客户端 Windows 8
标头 storport.h (包括 Scsi.h、Minitape.h、Storport.h)

另请参阅

BLOCK_DEVICE_RANGE_DESCRIPTOR

POPULATE_TOKEN_HEADER