Поделиться через


FLT_PARAMETERS для объединения IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE

Следующий компонент объединения используется, когда поле MajorFunctionструктуры FLT_IO_PARAMETER_BLOCK для операции IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE.

Синтаксис

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    LARGE_INTEGER             FileOffset;
    ULONG                     Length;
    ULONG POINTER_ALIGNMENT   LockKey;
    BOOLEAN POINTER_ALIGNMENT CheckForReadOperation;
  } FastIoCheckIfPossible;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Члены

  • FastIoCheckIfPossible: структура, содержащая следующие элементы.

  • FileOffset: начальное смещение байтов в кэшированном файле.

  • Длина: длина считываемых или записываемых данных в байтах.

  • LockKey: значение ключа, связанное с блокировкой диапазона байтов в целевом файле. Если диапазон для чтения или записи перекрывается или является поддиагоном диапазона неисключительно заблокированного диапазона в файле, этот параметр должен быть ключом для этой общей блокировки. Общая блокировка должна удерживаться родительским процессом вызывающего потока; В противном случае этот параметр игнорируется.

CheckForReadOperation: указывает, должна ли эта операция проверка для операции чтения или записи. Для операции чтения задано значение TRUE , а для операции записи — ЗНАЧЕНИЕ FALSE .

Комментарии

Структура FLT_PARAMETERS для операций IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE содержит параметры для операции FastIoCheckIfPossible , представленные структурой данных обратного вызова (FLT_CALLBACK_DATA). Он содержится в FLT_IO_PARAMETER_BLOCK структуре.

IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE — это быстрая операция ввода-вывода.

Требования

Тип требования Требование
Заголовок Fltkernel.h (включая Fltkernel.h)

См. также раздел

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

FsRtlAreThereCurrentFileLocks

FsRtlCopyRead

FsRtlCopyWrite