структура FILE_FULL_DIR_INFORMATION (ntifs.h)
Структура FILE_FULL_DIR_INFORMATION используется для запроса подробных сведений о файлах в каталоге.
Синтаксис
typedef struct _FILE_FULL_DIR_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
WCHAR FileName[1];
} FILE_FULL_DIR_INFORMATION, *PFILE_FULL_DIR_INFORMATION;
Члены
NextEntryOffset
Смещение в байтах следующей записи FILE_FULL_DIR_INFORMATION , если в буфере присутствует несколько записей. Этот элемент равен нулю, если другие записи не соответствуют этому элементу.
FileIndex
Байтовая смещение файла в родительском каталоге. Этот член не определен для файловых систем, таких как NTFS, в которых положение файла в родительском каталоге не является фиксированным и может быть изменено в любое время для поддержания порядка сортировки.
CreationTime
Время создания файла.
LastAccessTime
Время последнего доступа к файлу.
LastWriteTime
Время последней записи сведений в файл.
ChangeTime
Время последнего изменения файла.
EndOfFile
Абсолютно новая позиция конца файла в виде смещения в байтах от начала файла. EndOfFile задает смещение байтов до конца файла. Так как это значение отсчитывается от нуля, оно фактически ссылается на первый свободный байт в файле. Другими словами, EndOfFile — это смещение до байта, следующего за последним допустимым байтом в файле.
AllocationSize
Размер выделения файла в байтах. Обычно это значение кратно размеру сектора или кластера базового физического устройства.
FileAttributes
Атрибуты файла, которые могут быть любым допустимым сочетанием следующих:
- FILE_ATTRIBUTE_READONLY
- FILE_ATTRIBUTE_HIDDEN
- FILE_ATTRIBUTE_SYSTEM
- FILE_ATTRIBUTE_DIRECTORY
- FILE_ATTRIBUTE_ARCHIVE
- FILE_ATTRIBUTE_NORMAL
- FILE_ATTRIBUTE_TEMPORARY
- FILE_ATTRIBUTE_COMPRESSED
FileNameLength
Указывает длину строки имени файла.
EaSize
Объединенная длина (в байтах) расширенных атрибутов (EA) для файла.
FileName[1]
Задает первый символ строки имени файла. За этим в памяти следует остаток строки.
Комментарии
Эти сведения можно запросить с помощью следующих способов:
Вызовите ZwQueryDirectoryFile, передав FileFullDirectoryInformation в качестве значения FileInformationClass и передавая выделенный вызывающим FILE_FULL_DIR_INFORMATION структурированный буфер в качестве значения FileInformation.
Создайте IRP с основным кодом функции IRP_MJ_DIRECTORY_CONTROL и дополнительным кодом функции IRP_MN_QUERY_DIRECTORY.
Для запроса этих сведений не требуется никаких конкретных прав доступа.
Все даты и время имеют абсолютный системный формат. Абсолютное системное время — это число 100-наносекундных интервалов с начала 1601 года.
Эта структура должна быть выровнена по границе LONGLONG (8 байт). Если буфер содержит две или более из этих структур, значение NextEntryOffset в каждой записи, кроме последней, попадает на 8-байтовую границу.
Требования
Требование | Значение |
---|---|
Заголовок | ntifs.h (включая Ntifs.h, Fltkernel.h) |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по