FSCTL_OFFLOAD_READ_OUTPUT構造体 (ntifs.h)
FSCTL_OFFLOAD_READ_OUTPUT 構造体には、FSCTL_OFFLOAD_READ 制御コード要求の出力が含まれています。
構文
typedef struct _FSCTL_OFFLOAD_READ_OUTPUT {
ULONG Size;
ULONG Flags;
ULONGLONG TransferLength;
UCHAR Token[512];
} FSCTL_OFFLOAD_READ_OUTPUT, *PFSCTL_OFFLOAD_READ_OUTPUT;
メンバーズ
Size
この構造体のサイズ。 このメンバーを sizeof(FSCTL_OFFLOAD_READ_OUTPUT) に設定します。
Flags
結果フラグ。 この値は、次の値のビットごとの OR の組み合わせです。
TransferLength
Tokenで表されるデータの長さ (バイト単位)。
Token[512]
FSCTL_OFFLOAD_READ_INPUTで指定された範囲内のファイル データを表すトークン構造 (STORAGE_OFFLOAD_TOKEN) を含むバイト配列。 トークン の内容は、オフロード操作間で変更されない必要があります。
備考
FSCTL_OFFLOAD_READ 操作が成功した場合、ストレージ デバイスのコピー プロバイダーは、読み取られたファイル データの部分を識別する一意のトークン値を FSCTL_OFFLOAD_READ_OUTPUTで返します。
コピー プロバイダーは、FSCTL_OFFLOAD_READ_INPUT 構造体の TokenTimeToLive メンバー内で読み取られたデータを保持します。
トークン は、FSCTL_OFFLOAD_READ_INPUTの FileOffset メンバー内の要求されたオフセットで始まるファイルの連続した領域を表します。 コピーされた結果の長さ (TransferLength) は、FSCTL_OFFLOAD_READ_INPUTの CopyLength メンバーで最初に指定されたものより小さ 可能性があります。 値が小さい場合は、トークン が、要求されたデータよりも少ないデータを論理的に表すことができることを示します。
要求されたデータよりも少ないデータが転送された場合は、別の FSCTL_OFFLOAD_READ 要求を実行して読み取り操作を完了できます。 次の要求では、TransferLength の値と、前の長さの調整された読み取り長から TransferLengthの値を引いた値を使用して、FSCTL_OFFLOAD_READ_INPUT 構造体の更新された FileOffset メンバーを使用します。 また、たとえば、ZwReadFile ルーチンを使用して、オフロードされていない読み取りメソッドを使用して不完全な読み取り操作を完了できます。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8。 |
ヘッダー | ntifs.h (Ntifs.h、Fltkernel.h を含む) |