typedef struct _FILE_DISPOSITION_INFORMATION { BOOLEAN DeleteFile; } FILE_DISPOSITION_INFORMATION;
The caller must have DELETE access to a given file in order to call ZwSetInformationFile with DeleteFile set to TRUE in this structure. Subsequently, the only legal operation by such a caller is to close the open file handle.
A file marked for deletion is not actually deleted until all open handles for the file object have been closed and the link count for the file is zero.