Undocumented functions of NTDLL

2OO1, 13 April



FILE_DIRECTORY_INFORMATION
FILE_DIRECTORY_INFORMATION

typedef struct _FILE_DIRECTORY_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; WCHAR FileName[1];

} FILE_DIRECTORY_INFORMATION, *PFILE_DIRECTORY_INFORMATION;



Structure FILE_DIRECTORY_INFORMATION is returned as a result of call NtQueryDirectoryFile with FileDirectoryInformation information class. It contains some typical informations about directory entries.



  • NextEntryOffset
  •     Offset (in bytes) of next FILE_DIRECTORY_INFORMATION structure placed in result buffer. If there's no more entries, NextEntryOffset is set to zero.
  • FileIndex
  •     File index value, or zero, if directory indexing is not avaiable.
  • CreationTime
  •     Time of object creation;
  • LastAccessTime
  •     Last access time. Means time when last open operation was performed.
  • LastWriteTime
  •     Time of last write data.
  • ChangeTime
  •     Time of last change.
  • EndOfFile
  •     Specify length of file, in bytes.
  • AllocationSize
  •     Specify real size of file on device. It must be equal or greater to EndOfFile member.
  • FileAttributes
  •     Attributes of file.
  • FileNameLength
  •     Length of FileName array, in bytes.
  • FileName[1]
  •     UNICODE string specifing file name.


    Documented by:
    Tomasz Nowak
    Bo Branten



    Requirements:
    Library: ntdll.lib


    See also:
    FILE_BOTH_DIR_INFORMATION
    FILE_FULL_DIR_INFORMATION
    FILE_INFORMATION_CLASS
    FILE_NAMES_INFORMATION
    NtQueryDirectoryFile