структура SRBEX_DATA_SCSI_CDB_VAR (srb.h)
Структура SRBEX_DATA_SCSI_CDB_VAR содержит расширенные данные SRB для блока данных команд SCSI переменной длины (CDB).
Синтаксис
typedef struct _SRBEX_DATA_SCSI_CDB_VAR {
SRBEXDATATYPE Type;
ULONG Length;
UCHAR ScsiStatus;
UCHAR SenseInfoBufferLength;
UCHAR Reserved[2];
ULONG CdbLength;
ULONG Reserved1[2];
PVOID POINTER_ALIGN SenseInfoBuffer;
UCHAR POINTER_ALIGN Cdb[ANYSIZE_ARRAY];
} SRBEX_DATA_SCSI_CDB_VAR, *PSRBEX_DATA_SCSI_CDB_VAR;
Члены
Type
Индикатор типа данных для двунаправленной расширенной структуры данных SRB. Установите значение SrbExDataTypeScsiCdbVar.
Length
Длина данных в этой структуре, начиная с элемента ScsiStatus. Это значение диапазонов между SRBEX_DATA_SCSI_CDB_VAR_LENGTH_MIN и SRBEX_DATA_SCSI_CDB_VAR_LENGTH_MAX.
ScsiStatus
Код состояния SCSI, возвращенный для отправленного SRB.
SenseInfoBufferLength
Длина информации о смысле, возвращаемой в буфере, на которую указывает SenseInfoBuffer.
Reserved[2]
Этот элемент зарезервирован. Содержит нули.
CdbLength
Длина данных CDB в байтах массива Cdb.
Reserved1[2]
Этот элемент зарезервирован. Содержит нули.
SenseInfoBuffer
Указатель на буфер, содержащий любую возвращаемую информацию о смысле.
Cdb[ANYSIZE_ARRAY]
Массив переменной длины, содержащий буфер CDB.
Замечания
Для размеров данных CDB меньше 32 байт, вместо этого можно использовать структуру SRBEX_DATA_SCSI_CDB32 и, возможно, структуру SRBEX_DATA_SCSI_CDB16. Максимально допустимые данные CDB в массиве Cdb SRBEX_DATA_SCSI_CDB_VAR_LENGTH_MAX - SRBEX_DATA_SCSI_CDB_VAR_LENGTH_MIN + 1. Длина, указанная в CdbLength, должна быть меньше или равна этому значению.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 8. |
заголовка | srb.h (include Storport.h, Srb.h, Minitape.h) |