#ifndef _NTIOAPI_H
//
// NtQueryInformationFile/NtSetInformationFile types
//
/**
* The FILE_BASIC_INFORMATION structure contains timestamps and basic attributes of a file.
* \li If you specify a value of zero for any of the XxxTime members, the file system keeps a file's current value for that time.
* \li If you specify a value of -1 for any of the XxxTime members, time stamp updates are disabled for I/O operations preformed on the file handle.
* \li If you specify a value of -2 for any of the XxxTime members, time stamp updates are enabled for I/O operations preformed on the file handle.
* \remarks To set the members of this structure, the caller must have FILE_WRITE_ATTRIBUTES access to the file.
*/
typedef struct _FILE_BASIC_INFORMATION
{
LARGE_INTEGER CreationTime; // Specifies the time that the file was created.
LARGE_INTEGER LastAccessTime; // Specifies the time that the file was last accessed.
LARGE_INTEGER LastWriteTime; // Specifies the time that the file was last written to.
LARGE_INTEGER ChangeTime; // Specifies the last time the file was changed.
ULONG FileAttributes; // Specifies one or more FILE_ATTRIBUTE_XXX flags.
} FILE_BASIC_INFORMATION, *PFILE_BASIC_INFORMATION;
View code on GitHub
This structure is documented in Windows Driver Kit.
Structure FILE_BASIC_INFORMATION
is used in a call to function NtSetInformationFile
with FileBasicInformation
information class, and is received in a call to NtQueryInformationFile
with the same information class. Also function NtQueryAttributesFile
uses as a result FILE_BASIC_INFORMATION
, but it fills only FileAttributes
field. See required function's description for details.
Time of file creation, in 100-ns units.
Time of last open operation, in 100-ns units.
Time of last write operation, in 100-ns units.
Time of any last change, in 100-ns units.
File attributes. See NtCreateFile
for possibilities.
Structure is also available in Microsoft DDK.