estructura FSCTL_OFFLOAD_READ_OUTPUT (ntifs.h)
La estructura FSCTL_OFFLOAD_READ_OUTPUT contiene la salida de la solicitud de código de control de FSCTL_OFFLOAD_READ .
Sintaxis
typedef struct _FSCTL_OFFLOAD_READ_OUTPUT {
ULONG Size;
ULONG Flags;
ULONGLONG TransferLength;
UCHAR Token[512];
} FSCTL_OFFLOAD_READ_OUTPUT, *PFSCTL_OFFLOAD_READ_OUTPUT;
Miembros
Size
Tamaño de esta estructura. Establezca este miembro en sizeof(FSCTL_OFFLOAD_READ_OUTPUT).
Flags
Marcas de resultado. Este valor es una combinación OR bit a bit de estos valores:
TransferLength
Longitud, en bytes, de datos representados por Token.
Token[512]
Matriz de bytes que contiene una estructura de tokens, STORAGE_OFFLOAD_TOKEN, que representa los datos de un archivo dentro de un intervalo especificado en FSCTL_OFFLOAD_READ_INPUT. El contenido del token debe permanecer sin modificar entre las operaciones de descarga.
Comentarios
Si la operación de FSCTL_OFFLOAD_READ se realiza correctamente, el proveedor de copia del dispositivo de almacenamiento devuelve, en FSCTL_OFFLOAD_READ_OUTPUT, un valor de token único que identifica la parte de los datos de archivo leídos.
El proveedor de copia conserva los datos leídos durante el miembro TokenTimeToLive de la estructura FSCTL_OFFLOAD_READ_INPUT .
El token representa una región contigua del archivo que comienza con el desplazamiento solicitado en el miembro FileOffset de FSCTL_OFFLOAD_READ_INPUT. La longitud resultante copiada, TransferLength, puede ser menor que la especificada originalmente en el miembro CopyLength de FSCTL_OFFLOAD_READ_INPUT. Un valor más pequeño indica que token pudo representar lógicamente menos datos de los solicitados.
Si se transfirieron menos datos de los solicitados, la operación de lectura se puede completar realizando otra solicitud de FSCTL_OFFLOAD_READ . La siguiente solicitud usa el miembro FileOffset actualizado en la estructura FSCTL_OFFLOAD_READ_INPUT con el valor de TransferLength y una longitud de lectura ajustada de la longitud anterior menos el valor de TransferLength. Además, se puede completar una operación de lectura incompleta a través de un método de lectura no descargado, mediante la rutina ZwReadFile , por ejemplo.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8. |
Encabezado | ntifs.h (incluya Ntifs.h, Fltkernel.h) |