Skip to content

Latest commit

 

History

History
218 lines (143 loc) · 6.24 KB

nf-fltkernel-fltsetinformationfile.md

File metadata and controls

218 lines (143 loc) · 6.24 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
NF:fltkernel.FltSetInformationFile
FltSetInformationFile function (fltkernel.h)
FltSetInformationFile sets information for a given file.
ifsk\fltsetinformationfile.htm
ifsk
04/16/2018
FltSetInformationFile function
FltApiRef_p_to_z_310caf59-cf9a-488a-8632-f0d8d5e14769.xml, FltSetInformationFile, FltSetInformationFile function [Installable File System Drivers], fltkernel/FltSetInformationFile, ifsk.fltsetinformationfile
fltkernel.h
Fltkernel.h
Universal
FltMgr.lib
Fltmgr.sys
PASSIVE_LEVEL
Windows
FltSetInformationFile
fltkernel/FltSetInformationFile
APIRef
kbSyntax
DllExport
fltmgr.sys
FltSetInformationFile

FltSetInformationFile function

-description

FltSetInformationFile sets information for a given file.

-parameters

-param Instance [in]

Opaque instance pointer for the caller. This parameter is required and cannot be NULL.

-param FileObject [in]

File object pointer for the file. This parameter is required and cannot be NULL.

-param FileInformation [in]

Pointer to a caller-allocated buffer that contains information to be set for the file. The FileInformationClass parameter specifies the type of information. This parameter is required and cannot be NULL.

-param Length [in]

Size, in bytes, of the FileInformation buffer.

-param FileInformationClass [in]

Specifies the type of information to be set for the file. The following values are defined.

Value Meaning
FileAllocationInformation Set FILE_ALLOCATION_INFORMATION for the file.
FileBasicInformation Set FILE_BASIC_INFORMATION for the file.
FileDispositionInformation Set FILE_DISPOSITION_INFORMATION for the file.
FileEndOfFileInformation Set FILE_END_OF_FILE_INFORMATION for the file.
FileLinkInformation Set FILE_LINK_INFORMATION for the file.
FilePositionInformation Set FILE_POSITION_INFORMATION for the file.
FileRenameInformation Set FILE_RENAME_INFORMATION for the file. For more information about file renaming, see the following Remarks section.
FileValidDataLengthInformation Set FILE_VALID_DATA_LENGTH_INFORMATION for the file.

-returns

FltSetInformationFile returns STATUS_SUCCESS or an appropriate NTSTATUS value.

-remarks

A minifilter driver calls FltSetInformationFile to set information for a given file. The file must currently be open.

A file rename operation imposes the following restriction on the parameter values passed to FltSetInformationFile: As noted in the reference entry for FILE_RENAME_INFORMATION, a file or directory can only be renamed within a volume. In other words, a rename operation cannot cause a file or directory to be moved to a different volume. Unlike ZwSetInformationFile, FltSetInformationFile does not validate the contents of the FILE_RENAME_INFORMATION structure. Thus the caller of FltSetInformationFile is responsible for ensuring that the new name for the file or directory is on the same volume as the old name.

Minifilter drivers must use FltSetInformationFile , not ZwSetInformationFile, to rename a file.

-see-also

FILE_ALLOCATION_INFORMATION

FILE_BASIC_INFORMATION

FILE_DISPOSITION_INFORMATION

FILE_END_OF_FILE_INFORMATION

FILE_LINK_INFORMATION

FILE_POSITION_INFORMATION

FILE_RENAME_INFORMATION

FILE_VALID_DATA_LENGTH_INFORMATION

FltQueryInformationFile

FltQueryVolumeInformationFile

ZwSetInformationFile