Skip to content

Latest commit

 

History

History
134 lines (94 loc) · 4.79 KB

ns-ntifs-_file_full_dir_information.md

File metadata and controls

134 lines (94 loc) · 4.79 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NS:ntifs._FILE_FULL_DIR_INFORMATION
FILE_FULL_DIR_INFORMATION (ntifs.h)
The FILE_FULL_DIR_INFORMATION structure is used to query detailed information for the files in a directory.
ifsk\file_full_dir_information.htm
ifsk
07/26/2022
FILE_FULL_DIR_INFORMATION structure
*PFILE_FULL_DIR_INFORMATION, FILE_FULL_DIR_INFORMATION, FILE_FULL_DIR_INFORMATION structure [Installable File System Drivers], PFILE_FULL_DIR_INFORMATION, PFILE_FULL_DIR_INFORMATION structure pointer [Installable File System Drivers], _FILE_FULL_DIR_INFORMATION, fileinformationstructures_2dfa5780-08bf-4cb8-96f6-c247baaa813a.xml, ifsk.file_full_dir_information, ntifs/FILE_FULL_DIR_INFORMATION, ntifs/PFILE_FULL_DIR_INFORMATION
ntifs.h
Ntifs.h, Fltkernel.h
Windows
Windows
FILE_FULL_DIR_INFORMATION, *PFILE_FULL_DIR_INFORMATION
_FILE_FULL_DIR_INFORMATION
ntifs/_FILE_FULL_DIR_INFORMATION
PFILE_FULL_DIR_INFORMATION
ntifs/PFILE_FULL_DIR_INFORMATION
FILE_FULL_DIR_INFORMATION
ntifs/FILE_FULL_DIR_INFORMATION
APIRef
kbSyntax
HeaderDef
ntifs.h
_FILE_FULL_DIR_INFORMATION
PFILE_FULL_DIR_INFORMATION
FILE_FULL_DIR_INFORMATION

FILE_FULL_DIR_INFORMATION structure

-description

The FILE_FULL_DIR_INFORMATION structure is used to query detailed information for the files in a directory.

-struct-fields

-field NextEntryOffset

Byte offset of the next FILE_FULL_DIR_INFORMATION entry, if multiple entries are present in a buffer. This member is zero if no other entries follow this one.

-field FileIndex

Byte offset of the file within the parent directory. This member is undefined for file systems, such as NTFS, in which the position of a file within the parent directory is not fixed and can be changed at any time to maintain sort order.

-field CreationTime

Time when the file was created.

-field LastAccessTime

Last time the file was accessed.

-field LastWriteTime

Last time information was written to the file.

-field ChangeTime

Last time the file was changed.

-field EndOfFile

Absolute new end-of-file position as a byte offset from the start of the file. EndOfFile specifies the byte offset to the end of the file. Because this value is zero-based, it actually refers to the first free byte in the file. In other words, EndOfFile is the offset to the byte immediately following the last valid byte in the file.

-field AllocationSize

File allocation size, in bytes. Usually, this value is a multiple of the sector or cluster size of the underlying physical device.

-field FileAttributes

File attributes, which can be any valid combination of the following:

  • FILE_ATTRIBUTE_READONLY
  • FILE_ATTRIBUTE_HIDDEN
  • FILE_ATTRIBUTE_SYSTEM
  • FILE_ATTRIBUTE_DIRECTORY
  • FILE_ATTRIBUTE_ARCHIVE
  • FILE_ATTRIBUTE_NORMAL
  • FILE_ATTRIBUTE_TEMPORARY
  • FILE_ATTRIBUTE_COMPRESSED

-field FileNameLength

Specifies the length of the file name string.

-field EaSize

Combined length, in bytes, of the extended attributes (EA) for the file.

-field FileName

Specifies the first character of the file name string. This is followed in memory by the remainder of the string.

-remarks

This information can be queried in either of the following ways:

  • Call ZwQueryDirectoryFile, passing FileFullDirectoryInformation as the value of FileInformationClass and passing a caller-allocated, FILE_FULL_DIR_INFORMATION-structured buffer as the value of FileInformation.

  • Create an IRP with major function code IRP_MJ_DIRECTORY_CONTROL and minor function code IRP_MN_QUERY_DIRECTORY.

No specific access rights are required to query this information.

All dates and times are in absolute system-time format. Absolute system time is the number of 100-nanosecond intervals since the start of the year 1601.

This structure must be aligned on a LONGLONG (8-byte) boundary. If a buffer contains two or more of these structures, the NextEntryOffset value in each entry, except the last, falls on an 8-byte boundary.

-see-also

FsRtlNotifyFullChangeDirectory

IRP_MJ_DIRECTORY_CONTROL

ZwQueryDirectoryFile