Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The following union component is used when the MajorFunction field of the FLT_IO_PARAMETER_BLOCK structure for the operation is IRP_MJ_QUERY_OPEN.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
PIRP Irp;
PVOID FileInformation;
PULONG Length;
FILE_INFORMATION_CLASS FileInformationClass;
} QueryOpen;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Members
Irp: A pointer to the IRP associated with this operation.
FileInformation: A pointer to a caller-allocated buffer into which the routine writes the requested information about the file object. The FileInformationClass member specifies the type of information that the caller requests.
Length: A pointer to the size, in bytes, of the buffer pointed to by FileInformation.
FileInformationClass: Specifies the type of information to be returned about the file, in the buffer that FileInformation points to. Device and intermediate drivers can specify any of the following FILE_INFORMATION_CLASS values. Other values cause the call to fail and should not be passed to PreQueryOpen/PostQueryOpen calls.
FILE_INFORMATION_CLASS value Type of information returned FileStatInformation A FILE_STAT_INFORMATION structure. This structure contains an access mask. For more information about access masks, see ACCESS_MASK. FileStatLxInformation A FILE_STAT_LX_INFORMATION structure. This structure contains an access mask. For more information about access masks, see ACCESS_MASK. FileCaseSensitiveInformation A FILE_CASE_SENSITIVE_INFORMATION structure. FileStatBasicInformation A FILE_STAT_BASIC_INFORMATION structure.
Remarks
The FLT_PARAMETERS structure for IRP_MJ_QUERY_OPEN operations contains the parameters for an QueryOpen operation represented by a callback data (FLT_CALLBACK_DATA) structure. It is contained in an FLT_IO_PARAMETER_BLOCK structure.
IRP_MJ_QUERY_OPEN is a file system (FSFilter) callback operation. A filter can reject the operation in both its pre-operation callback and post-operation callback using FLT_PREOP_DISALLOW_FSFILTER_IO and FLT_POSTOP_DISALLOW_FSFILTER_IO, respectively.
The File System does not fill in the Information field in the IO_STATUS block. Filters shouldn't inspect this value in their post-calls.
For more information about FSFilter callback operations, see the reference entry for FsRtlRegisterFileSystemFilterCallbacks.
Requirements
Requirement type | Requirement |
---|---|
Header | Fltkernel.h (include Fltkernel.h) |