// ntifs.h
typedef struct _FILE_ALLOCATED_RANGE_BUFFER {
LARGE_INTEGER FileOffset;
LARGE_INTEGER Length;
} FILE_ALLOCATED_RANGE_BUFFER, *PFILE_ALLOCATED_RANGE_BUFFER;
View the official Windows Driver Kit DDI reference// winioctl.h
typedef struct _FILE_ALLOCATED_RANGE_BUFFER {
LARGE_INTEGER FileOffset;
LARGE_INTEGER Length;
} FILE_ALLOCATED_RANGE_BUFFER, *PFILE_ALLOCATED_RANGE_BUFFER;
View the official Win32 API referenceNo description available.
FILE_ALLOCATED_RANGE_BUFFER structures are used as input and output during a FSCTL_QUERY_ALLOCATED_RANGES control code request.
FileOffsetOn FSCTL input, contains the file offset in bytes of the start of a range of bytes in a file. FileOffset must be greater than or equal to 0.
On FSCTL output, contains the file offset in bytes from the start of the file; the start of a range of bytes to which storage is allocated. If the file is a sparse file, FileOffset can contain ranges of bytes for which storage is not allocated; these ranges will be excluded from the list of allocated ranges returned by FSCTL_QUERY_ALLOCATED_RANGES. Because an application using a sparse file can choose whether or not to allocate disk space for each sequence of 0x00-valued bytes, the allocated ranges can contain 0x00-valued bytes. This value must be greater than or equal to 0 on output.
LengthContains the size in bytes of the range. On FSCTL input, Length must be greater than or equal to 0. On FSCTL output, Length must be greater than 0.
Indicates a range of bytes in a file. This structure is used with the FSCTL_QUERY_ALLOCATED_RANGES control code. On input, the structure indicates the range of the file to search. On output, the operation retrieves an array of FILE_ALLOCATED_RANGE_BUFFER structures to indicate the allocated ranges within the search range.
FileOffsetThe file offset of the start of a range of bytes in a file, in bytes.
LengthThe size of the range, in bytes.