通过


SENSE_DATA结构

用于报告状态或错误信息,以响应 SCSI 请求感知 命令。

语法

typedef struct _SENSE_DATA {
  UCHAR  ErrorCode  :7;
  UCHAR  Valid  :1;
  UCHAR  SegmentNumber;
  UCHAR  SenseKey  :4;
  UCHAR  Reserved  :1;
  UCHAR  IncorrectLength  :1;
  UCHAR  EndOfMedia  :1;
  UCHAR  FileMark  :1;
  UCHAR  Information[4];
  UCHAR  AdditionalSenseLength;
  UCHAR  CommandSpecificInformation[4];
  UCHAR  AdditionalSenseCode;
  UCHAR  AdditionalSenseCodeQualifier;
  UCHAR  FieldReplaceableUnitCode;
  UCHAR  SenseKeySpecific[3];
} SENSE_DATA, *PSENSE_DATA;

成员

ErrorCode

报表类型。

价值 含义
0x70
当前错误。
0x71
延迟错误。

 

有效

如果 “信息” 字段是在标准中定义的,则为 1;否则 ,“信息” 字段特定于供应商,而不是由标准定义。

SegmentNumber

已过时。

SenseKey

指示错误的类别。

无意义 (0x0)

恢复错误 (0x1)

未就绪 (0x2)

中等错误 (0x3)

硬件错误 (0x4)

非法请求 (0x5)

单位注意 (0x6)

数据保护 (0x7)

固件错误 (0x9)

中止的命令 (0xB)

相等 (0xC)

卷溢出 (0xD)

错误( 0xE)

保留

保留。

IncorrectLength

如果请求的逻辑块长度与媒体上的数据的逻辑块长度不匹配,则为 1。

EndOfMedia

如果顺序访问设备已达到介质末尾,或者打印机已出纸,则为 1。

FileMark

如果当前命令已达到文件标记或设置标记,则为 1。 仅适用于顺序访问设备。

信息

设备类型或命令特定数据。

AdditionalSenseLength

结构的其余部分的长度(以字节为单位)。 总长度减去 7。

CommandSpecificInformation

特定于命令的数据。 值在适当的命令标准中定义。

AdditionalSenseCode

描述 SenseKey 字段中报告的错误的设备特定代码。

AdditionalSenseCodeQualifier

可以包含有关 AdditionalSenseCode 字段的其他详细信息。

FieldReplaceableUnitCode

有关与此感知数据关联的组件的特定于供应商的信息。

SenseKeySpecific

感知键特定信息的内容和格式由 SenseKey 字段的值确定。

注解

有关感知数据格式的详细信息,请参阅 SCSI 请求感知命令https://wikipedia.org/wiki/SCSI_command)。

要求

要求 价值
支持的最低客户端
Windows XP [仅限桌面应用]
支持的最低服务器
Windows Server 2003 [仅限桌面应用]
标题
Scsi.h

另请参阅

iSCSI 目标直通

SCSI_PASS_THROUGH_DIRECT