RECEIVE_TOKEN_INFORMATION_HEADER 結構 (scsi.h)

RECEIVE_TOKEN_INFORMATION_HEADER 結構包含從卸除數據傳輸作業傳回的狀態資訊。

語法

typedef struct {
  UCHAR AvailableData[4];
  UCHAR ResponseToServiceAction : 5;
  UCHAR Reserved1 : 3;
  UCHAR OperationStatus : 7;
  UCHAR Reserved2 : 1;
  UCHAR OperationCounter[2];
  UCHAR EstimatedStatusUpdateDelay[4];
  UCHAR CompletionStatus;
  UCHAR SenseDataFieldLength;
  UCHAR SenseDataLength;
  UCHAR TransferCountUnits;
  UCHAR TransferCount[8];
  UCHAR SegmentsProcessed[2];
  UCHAR Reserved3[6];
  UCHAR SenseData[ANYSIZE_ARRAY];
} RECEIVE_TOKEN_INFORMATION_HEADER, *PRECEIVE_TOKEN_INFORMATION_HEADER;

成員

AvailableData[4]

SenseData 陣列中可用的數據量,以及任何其他結果資訊。

ResponseToServiceAction

回應碼,指出回應所在的命令動作。 服務動作代碼如下。

意義
SERVICE_ACTION_POPULATE_TOKEN 回應資訊適用於 POPULATE TOKEN 命令。
SERVICE_ACTION_WRITE_USING_TOKEN 回應資訊適用於 WRITE USING TOKEN 命令。

Reserved1

保留的。

OperationStatus

複製作業的目前狀態。 狀態可以是下列其中一個值。

意義
0x01 作業已成功完成。
0x02 作業未成功完成。
0x04 作業已順利完成,但複製啟動器應該確認已傳輸所有數據。
0x10 作業正在進行中。 前景或背景作業狀態不明。
0x11 作業在前景進行中。
0x12 作業在背景進行中。
0x60 作業已終止。 可能是由現有的資源保留區。

Reserved2

保留的。

OperationCounter[2]

目前複製作業所處理的命令數目。

EstimatedStatusUpdateDelay[4]

建議的時間,以毫秒為單位,在傳送下一個 RECEIVE COPY STATUS 命令之前等候,以取得目前複製作業的更新資訊。

CompletionStatus

複製命令作業的 SCSI 狀態代碼。

SenseDataFieldLength

用於感知數據之整個數據區域的長度,以位元組為單位。 此值一律 >為 = SenseDataLength

SenseDataLength

SenseData 中數據的長度,以位元組為單位。

TransferCountUnits

套用至 TransferCount 的位元組單位。 每個單位擴充都是基底 2 中的指數。 例如 ,TRANSFER_COUNT_UNITS_KIBIBYTES乘數值為 1024,而不是 1000。 定義的單位如下。

意義
TRANSFER_COUNT_UNITS_BYTES 傳輸計數是以位元組為單位。
TRANSFER_COUNT_UNITS_KIBIBYTES 傳輸計數以 KB 為單位。
TRANSFER_COUNT_UNITS_MEBIBYTES 傳輸計數以 MB 為單位。
TRANSFER_COUNT_UNITS_GIBIBYTES 傳輸計數以 GB 為單位。
TRANSFER_COUNT_UNITS_TEBIBYTES 傳輸計數以 TB 為單位。
TRANSFER_COUNT_UNITS_PEBIBYTES 傳輸計數以 PB 為單位。
TRANSFER_COUNT_UNITS_EXBIBYTES 傳輸計數以 TB 為單位。
TRANSFER_COUNT_UNITS_NUMBER_BLOCKS 傳輸計數不是指數,而是以邏輯區塊長度單位為單位。

TransferCount[8]

作業中傳輸的數據長度。 TransferCountUnits 中的單位類型會套用至此值,以提供位元組總數。

SegmentsProcessed[2]

針對數據傳輸作業處理的區段數目。 區段是記憶體裝置的複製提供者在內部使用的複製長度單位。 在 Windows 系統上,此值是保留的,而且應用程式必須忽略這個成員。

Reserved3[6]

保留的。

SenseData[ANYSIZE_ARRAY]

針對複製作業傳回的感知數據。

備註

如果RECEIVE_TOKEN_INFORMATION_HEADER用於POPULATE TOKEN命令作業,且命令已順利完成,則從SenseData陣列開頭的 SenseDataFieldLength 位移時,也會顯示RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER結構。 RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER結構將包含建立為數據表示法的令牌, (ROD) 使用 命令傳送的範圍參數。

所有多位元組值都是大端格式。 在評估之前,必須轉換這些值,以符合目前平台的結束格式。

規格需求

需求
最低支援的用戶端 從 Windows 8 開始提供。
標頭 scsi.h (包括 Scsi.h、Minitape.h、Storport.h)

另請參閱

RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER