Expand Minimize

FLT_PARAMETERS for IRP_MJ_SET_INFORMATION union

Union component used when the MajorFunction field of the FLT_IO_PARAMETER_BLOCK structure for the operation is IRP_MJ_SET_INFORMATION.

Syntax


typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    ULONG                                    Length;
    FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
    PFILE_OBJECT                             ParentOfTarget;
    union {
      struct {
        BOOLEAN ReplaceIfExists;
        BOOLEAN AdvanceOnly;
      };
      ULONG  ClusterCount;
      HANDLE DeleteHandle;
    };
    PVOID                                    InfoBuffer;
  } SetFileInformation;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Members

SetFileInformation

Structure containing the following members.

Length

Length, in bytes, of the buffer at InfoBuffer.

FileInformationClass

Type of information to be set for the file. One of the following:

ValueMeaning

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.

FileValidDataLengthInformation

Set FILE_VALID_DATA_LENGTH_INFORMATION for the file.

 

ParentOfTarget

For rename or link operations. If InfoBuffer->FileName contains a fully qualified file name, or if InfoBuffer->RootDirectory is non-NULL, this member is a file object pointer for the parent directory of the file that is the target of the operation. Otherwise it is NULL.

( unnamed struct )

Structure containing the following members.

ReplaceIfExists

For rename or link operations. Set to TRUE to specify that a file that already exists with the same name is to be replaced with the given file. Set to FALSE if the rename or link operation should fail if a file with the given name already exists.

AdvanceOnly

A flag for end-of-file operations. This determines the use of the EndOfFile member FILE_END_OF_FILE_INFORMATION structure when FileInformationClass == FileEndOfFileInformation. If TRUE, a new valid data length for the file will be set from EndOfFile only if it increases the current valid data length. If FALSE, a new file size is set from EndOfFile.

ClusterCount

Reserved for system use. Do not use.

DeleteHandle

Reserved for system use. Do not use.

InfoBuffer

Pointer to an input buffer that contains the file information to be set.

Remarks

The FLT_PARAMETERS structure for IRP_MJ_SET_INFORMATION operations contains the parameters for a set-information operation represented by a callback data (FLT_CALLBACK_DATA) structure. It is contained in an FLT_IO_PARAMETER_BLOCK structure.

IRP_MJ_SET_INFORMATION is an IRP-based operation.

The AdvanceOnly member is set to TRUE by the cache manager to notify the file system to advance the current valid data length on the disk to the new valid data length in EndOfFile. If AdvanceOnly is FALSE, a new file size, in the EndOfFile member, is being set which can be larger or smaller than the current file size.

Requirements

Header

Fltkernel.h (include Fltkernel.h)

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
FLT_CALLBACK_DATA
FLT_IO_PARAMETER_BLOCK
FLT_IS_FASTIO_OPERATION
FLT_IS_FS_FILTER_OPERATION
FLT_IS_IRP_OPERATION
FLT_PARAMETERS
IRP_MJ_SET_INFORMATION

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft