scsiscan.h) (SCSISCAN_CMD 结构

当IOCTL_SCSISCAN_CMD指定的 I/O 控制代码时,SCSISCAN_CMD 结构用作 DeviceIoControl的参数。

语法

typedef struct _SCSISCAN_CMD {
  ULONG  Reserved1;
  ULONG  Size;
  ULONG  SrbFlags;
  UCHAR  CdbLength;
  UCHAR  SenseLength;
  UCHAR  Reserved2;
  UCHAR  Reserved3;
  ULONG  TransferLength;
  UCHAR  Cdb[16];
  PUCHAR pSrbStatus;
  PUCHAR pSenseBuffer;
} SCSISCAN_CMD, *PSCSISCAN_CMD;

成员

Reserved1

保留。 请勿使用。

Size

调用方提供的SCSISCAN_CMD结构的大小(以字节为单位)。

SrbFlags

调用方提供的SRB_FLAGS前缀位标志,用于指定请求的操作。 标志在 srb.h 中定义。

CdbLength

Cdb 成员中包含的 CDB 的长度(以字节为单位)。

SenseLength

pSenseBuffer 成员指向的感知缓冲区的长度(以字节为单位)。

Reserved2

保留。 请勿使用。

Reserved3

保留。 请勿使用。

TransferLength

要传输的缓冲区的长度(以字节为单位)。 这应与为 DeviceIoControl 函数的 nOutBufferSize 参数指定的值匹配。

Cdb[16]

调用方提供的 CDB 数据。 (CDB 结构在 scsi.h.) 中声明

pSrbStatus

调用方提供的指针,将接收 srb.h 中定义的SRB_STATUS前缀状态值之一。

pSenseBuffer

调用方提供的指向请求感知缓冲区的指针,由内核模式驱动程序填充。

要求

要求
Header scsiscan.h (包括 Scsiscan.h、Srb.h、Scsi.h)