FLT_PARAMETERS für IRP_MJ_LOCK_CONTROL Union

Die folgende Union-Komponente wird verwendet, wenn das Feld MajorFunction der FLT_IO_PARAMETER_BLOCK-Struktur für den Vorgang IRP_MJ_LOCK_CONTROL ist.

Syntax

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    PLARGE_INTEGER          Length;
    ULONG POINTER_ALIGNMENT Key;
    LARGE_INTEGER           ByteOffset;
    PEPROCESS               ProcessId;
    BOOLEAN                 FailImmediately;
    BOOLEAN                 ExclusiveLock;
  } LockControl;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Member

  • LockControl: Struktur, die die folgenden Member enthält.

  • Length: Zeiger auf eine Variable, die die Länge des zu sperrenden Bereichs in Byte angibt.

  • Schlüssel: Schlüsselwert, der der Bytebereichssperre zugewiesen werden soll.

  • ByteOffset: Startbyteoffset innerhalb der Datei des zu sperrenden Bereichs.

  • ProcessId: Undurchsichtiger Zeiger auf das Prozessobjekt für den Prozess, der die Bytebereichssperre angefordert hat.

  • FailImmediately: Boolescher Wert, der angibt, ob die Sperranforderung fehlschlagen soll, wenn die Sperre nicht sofort gewährt werden kann. Dieser Member wird auf FALSE festgelegt, wenn der anfordernde Thread in einen Wartezustand versetzt werden kann, bis die Anforderung gewährt wird, oder AUF TRUE , wenn dies nicht möglich ist.

  • ExclusiveLock: Boolescher Wert, der angibt, ob eine exklusive Sperre angefordert wird. Dieser Member wird auf TRUE festgelegt, wenn eine exklusive Sperre angefordert wird, oder AUF FALSE , wenn eine freigegebene Sperre angefordert wird.

Hinweise

Die FLT_PARAMETERS-Struktur für den IRP_MJ_LOCK_CONTROL-Vorgang , der durch eine Rückrufdatenstruktur (FLT_CALLBACK_DATA) dargestellt wird. Sie ist in einer FLT_IO_PARAMETER_BLOCK-Struktur enthalten.

IRP_MJ_LOCK_CONTROL kann ein IRP-basierter E/A-Vorgang oder ein schneller E/A-Vorgang sein.

Anforderungen

Anforderungstyp Anforderung
Header Fltkernel.h ( fltkernel.h einschließen)

Weitere Informationen

ACCESS_MASK

ACCESS_STATE

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

FltAllocateFileLock

FltCheckLockForReadAccess

FltCheckLockForWriteAccess

FltFreeFileLock

FltInitializeFileLock

FltProcessFileLock

FltUninitializeFileLock

IRP_MJ_LOCK_CONTROL

PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE

PUNLOCK_ROUTINE