структура FILE_VALID_DATA_LENGTH_INFORMATION (ntddk.h)
Структура FILE_VALID_DATA_LENGTH_INFORMATION используется в качестве аргумента для ZwSetInformationFile.
Синтаксис
typedef struct _FILE_VALID_DATA_LENGTH_INFORMATION {
LARGE_INTEGER ValidDataLength;
} FILE_VALID_DATA_LENGTH_INFORMATION, *PFILE_VALID_DATA_LENGTH_INFORMATION;
Члены
ValidDataLength
Указывает новую допустимую длину данных для файла. Этот параметр должен быть положительным значением, которое больше текущей допустимой длины данных, но меньше или равно текущему размеру файла.
Замечания
Структура FILE_VALID_DATA_LENGTH_INFORMATION используется для задания новой допустимой длины данных для файла в томе NTFS. допустимой длины данных файла — это длина в байтах данных, записанных в файл. Это допустимые данные расширяются с начала файла до последнего байта в файле, который не был ноль или не был неинициализирован.
Для настройки этой информации требуется FILE_WRITE_DATA доступ к файлу. Кроме того, неадминистраторы и удаленные пользователи должны иметь SeManageVolumePrivilege (SE_MANAGE_VOLUME_PRIVILEGE) для тома, на котором находится файл.
Драйверы фильтров файловой системы могут оказаться полезными для задания допустимой длины данных в следующих сценариях:
- При написании необработанных кластеров непосредственно на диск через аппаратный канал. Это позволяет драйверу фильтра сообщить файловой системе, что этот диапазон содержит допустимые данные, которые можно вернуть пользователю.
- При создании больших файлов, в которых производительность является проблемой. Это позволяет избежать времени, необходимого для заполнения файла нулями при создании или расширении файла.
- При удаленном расширении файла и записи на диск в файловой системе кластера обслуживаемых метаданных.
Эта структура должна быть выровнена по границе LONGLONG (8-байтов).
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Microsoft Windows XP и более поздних версиях операционной системы Windows. |
заголовка | ntddk.h (include Ntddk.h) |