SRBEX_DATA_SCSI_CDB_VAR 結構 (srb.h)
SRBEX_DATA_SCSI_CDB_VAR 結構包含可變長度 SCSI 命令數據區塊的擴充 SRB 數據, (CDB) 。
注意 SCSI 埠驅動程式和 SCSI 迷你埠驅動程式模型未來可能會改變或無法使用。 相反地,我們建議使用 Storport 驅動程式 和 Storport 迷你埠 驅動程式模型。
語法
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
針對提交的SRB傳回的SCSI狀態代碼。
SenseInfoBufferLength
SenseInfoBuffer 指向之緩衝區中傳回的感知資訊長度。
Reserved[2]
此成員已保留。 包含零。
CdbLength
Cdb 陣列的CDB數據長度,以位元組為單位。
Reserved1[2]
此成員已保留。 包含零。
SenseInfoBuffer
緩衝區的指標,其中包含任何傳回的感知資訊。
Cdb[ANYSIZE_ARRAY]
包含CDB緩衝區的可變長度陣列。
備註
對於小於 32 個字節的 CDB 數據大小,可以改用 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 (包含 Storport.h、Srb.h、Minitape.h) |