структура FILE_ID_EXTD_DIR_INFO (winbase.h)

Содержит идентификационную информацию для файла. Эта структура возвращается из функции GetFileInformationByHandleEx при передаче FileIdExtdDirectoryInfo (0x13) или FileIdExtdDirectoryRestartInfo (0x14) в параметре FileInformationClass .

Синтаксис

typedef struct _FILE_ID_EXTD_DIR_INFO {
  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;
  ULONG         ReparsePointTag;
  FILE_ID_128   FileId;
  WCHAR         FileName[1];
} FILE_ID_EXTD_DIR_INFO, *PFILE_ID_EXTD_DIR_INFO;

Члены

NextEntryOffset

Смещение для следующей FILE_ID_EXTD_DIR_INFO структуры, которая возвращается. Содержит ноль (0), если другие записи не следуют за этой.

FileIndex

Смещение в байтах файла в родительском каталоге. Этот элемент не определен для файловых систем, таких как NTFS, в которых положение файла в родительском каталоге не является фиксированным и может быть изменено в любое время для поддержания порядка сортировки.

CreationTime

Время создания файла.

LastAccessTime

Время последнего доступа к файлу.

LastWriteTime

Время последней записи файла.

ChangeTime

Время последнего изменения файла.

EndOfFile

Абсолютная новая позиция конца файла в виде смещения в байтах от начала файла до конца файла. Так как это значение отсчитывается от нуля, оно фактически ссылается на первый свободный байт в файле. Другими словами, EndOfFile — это смещение до байта, который сразу же следует за последним допустимым байтом в файле.

AllocationSize

Количество байтов, выделенных для файла. Обычно это значение кратно размеру сектора или кластера базового физического устройства.

FileAttributes

Атрибуты файла. Этот элемент может быть любым допустимым сочетанием следующих атрибутов:

Значение Значение
FILE_ATTRIBUTE_ARCHIVE
32 (0x20)
Файл или каталог, который является архивным файлом или каталогом. Приложения обычно используют этот атрибут для пометки файлов для резервного копирования или удаления . 
FILE_ATTRIBUTE_COMPRESSED
2048 (0x800)
Сжатый файл или каталог. Для файла все данные в файле сжимаются. Для каталога сжатие используется по умолчанию для вновь созданных файлов и подкаталогов.
FILE_ATTRIBUTE_DEVICE
64 (0x40)
Это значение зарезервировано для использования системой.
FILE_ATTRIBUTE_DIRECTORY
16 (0x10)
Дескриптор, идентифицирующий каталог.
FILE_ATTRIBUTE_ENCRYPTED
16384 (0x4000)
Зашифрованный файл или каталог. Для файла шифруются все потоки данных в файле. Для каталога шифрование используется по умолчанию для вновь созданных файлов и подкаталогов.
FILE_ATTRIBUTE_HIDDEN
2 (0x2)
Файл или каталог скрыт. Он не включен в обычный список каталогов.
FILE_ATTRIBUTE_NORMAL
128 (0x80)
Файл, для которых не заданы другие атрибуты. Этот атрибут действителен только при использовании отдельно.
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
8192 (0x2000)
Файл или каталог не должны индексироваться службой индексирования содержимого.
FILE_ATTRIBUTE_OFFLINE
4096 (0x1000)
Данные файла доступны не сразу. Этот атрибут указывает, что данные файла физически перемещаются в автономное хранилище. Этот атрибут используется удаленным хранилищем, которое является программным обеспечением для управления иерархическим хранилищем. Приложения не должны произвольно изменять этот атрибут.
FILE_ATTRIBUTE_READONLY
1 (0x1)
Файл, доступный только для чтения. Приложения могут считывать файл, но не могут записывать в него или удалять его. Этот атрибут не учитывается в каталогах. Дополнительные сведения см. в статье Невозможно просматривать или изменять атрибуты папок только для чтения или Системные атрибуты папок в Windows Server 2003, Windows XP, Windows Vista или Windows 7.
FILE_ATTRIBUTE_REPARSE_POINT
1024 (0x400)
Файл или каталог, с которым связана точка повторного измерения, или файл, представляющий собой символьную ссылку.
FILE_ATTRIBUTE_SPARSE_FILE
512 (0x200)
Файл, который является разреженным файлом.
FILE_ATTRIBUTE_SYSTEM
4 (0x4)
Файл или каталог, часть или который используется исключительно операционной системой.
FILE_ATTRIBUTE_TEMPORARY
256 (0x100)
Файл, используемый для временного хранения. Файловые системы избегают записи данных обратно в массовое хранилище, если доступно достаточно памяти кэша, так как обычно приложение удаляет временный файл после закрытия дескриптора. В этом сценарии система может полностью избежать записи данных. В противном случае данные записываются после закрытия дескриптора.
FILE_ATTRIBUTE_VIRTUAL
65536 (0x10000)
Это значение зарезервировано для использования системой.

FileNameLength

Длина имени файла.

EaSize

Размер расширенных атрибутов для файла.

ReparsePointTag

Если элемент FileAttributes содержит атрибут FILE_ATTRIBUTE_REPARSE_POINT , этот элемент задает тег точки повторного измерения.

В противном случае это значение не определено и не должно использоваться.

Дополнительные сведения см. в разделе Повторное изменение тегов точек.

IO_REPARSE_TAG_CSV (0x80000009)

IO_REPARSE_TAG_DEDUP (0x80000013)

IO_REPARSE_TAG_DFS (0x8000000A)

IO_REPARSE_TAG_DFSR (0x80000012)

IO_REPARSE_TAG_HSM (0xC0000004)

IO_REPARSE_TAG_HSM2 (0x80000006)

IO_REPARSE_TAG_MOUNT_POINT (0xA0000003)

IO_REPARSE_TAG_NFS (0x80000014)

IO_REPARSE_TAG_SIS (0x80000007)

IO_REPARSE_TAG_WIM (0x80000008)

FileId

Идентификатор файла.

FileName[1]

Первый символ строки имени файла. За этим в памяти следует остаток строки.

Требования

Требование Значение
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Верхняя часть winbase.h (включая Windows.h)

См. также раздел

FILE_ID_128

FILE_INFO_BY_HANDLE_CLASS

Структуры управления файлами

GetFileInformationByHandleEx