storport.h) (SRBEX_DATA_IO_INFO 结构

SRBEX_DATA_IO_INFO 结构包含与扩展 SRB 中的读取或写入请求相关的其他信息。

注意 SCSI 端口驱动程序和 SCSI 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序Storport 微型端口 驱动程序模型。
 

语法

typedef struct _SRBEX_DATA_IO_INFO {
  SRBEXDATATYPE Type;
  ULONG         Length;
  ULONG         Flags;
  ULONG         Key;
  ULONG         RWLength;
  BOOLEAN       IsWriteRequest;
  UCHAR         CachePriority;
  UCHAR         Reserved[2];
  ULONG         Reserved1[2];
} SRBEX_DATA_IO_INFO, *PSRBEX_DATA_IO_INFO;

成员

Type

双向扩展 SRB 数据结构的数据类型指示器。 设置为 SrbExDataTypeIoInfo

Length

此结构中的数据长度(以字节为单位),从 Flags 成员开始。 设置为 SRBEX_DATA_IO_INFO_LENGTH。

Flags

设置用于处理请求的标志。 可以是以下值的组合:

含义
REQUEST_INFO_NO_CACHE_FLAG
为此请求指定非缓存写入。
REQUEST_INFO_PAGING_IO_FLAG
为此请求指定分页 IO。
REQUEST_INFO_SEQUENTIAL_IO_FLAG
读取或写入是连续的。
REQUEST_INFO_TEMPORARY_FLAG
此请求的文件是临时的。
REQUEST_INFO_WRITE_THROUGH_FLAG
没有针对请求的系统缓冲。
REQUEST_INFO_HYBRID_WRITE_THROUGH_FLAG
执行混合缓存写入磁盘

此标志从 Windows 8.1 更新 开始可用。

REQUEST_INFO_VALID_CACHEPRIORITY_FLAG
混合缓存优先级对此 I/O 有效。

此标志从 Windows 8.1 更新 开始可用。

Key

一个标记值,用于标识传输的数据块。

RWLength

要传输的数据的长度(以字节为单位)。

IsWriteRequest

如果 SRB 中的 I/O 操作是写入请求,则为 TRUE。 否则为 FALSE;I/O 操作是读取请求。

CachePriority

混合缓存读取或写入的优先级。

此成员从 Windows 8.1 更新 开始有效。

Reserved[2]

此成员是保留的。 设置为 0。

Reserved1[2]

此成员是保留的。 设置为 0。

此成员从 Windows 8.1 更新 开始存在。

要求

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

另请参阅

STORAGE_REQUEST_BLOCK