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) |