Share via


PCOMPLETE_LOCK_IRP_ROUTINE Rückruffunktion (ntifs.h)

Ein Dateisystemfiltertreiber (Legacyfilter) kann eine PCOMPLETE_LOCK_IRP_ROUTINE typisierte Routine als CompleteLockIrpRoutine-Rückruf des Filters registrieren.

Syntax

PCOMPLETE_LOCK_IRP_ROUTINE PcompleteLockIrpRoutine;

NTSTATUS PcompleteLockIrpRoutine(
  PVOID Context,
  PIRP Irp
)
{...}

Parameter

Context

[in] Kontextzeiger, der an FsRtlProcessFileLock übergeben wurde.

Irp

[in] IRP für die Dateisperre IRP_MJ_LOCK_CONTROL Anforderung, die abgeschlossen wird. Der Sperranforderungstyp ist einer der folgenden:

  • IRP_MN_LOCK
  • IRP_MN_UNLOCK_ALL
  • IRP_MN_UNLOCK_ALL_BY_KEY
  • IRP_MN_UNLOCK_SINGLE

Rückgabewert

Diese Routine gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück. Wenn ein NTSTATUS-Wert zurückgegeben wird, der kein Erfolgscode ist, wird die Dateisperre aus der Datei entfernt.

Hinweise

Ein Dateisystemfiltertreiber (Legacyfilter) kann optional eine PCOMPLETE_LOCK_IRP_ROUTINE typisierte Routine als CompleteLockIrpRoutine-Routine des Legacyfilters für eine Bytebereichsdateisperre angeben.

Um diese Routine anzugeben, übergibt ein Legacyfilter einen Zeiger auf die Routine als CompleteLockIrpRoutine-Parameter für FsRtlAllocateFileLock oder FsRtlInitializeFileLock.

Wenn der Legacyfilter eine CompleteLockIrpRoutine-Routine für eine Dateisperre angibt, ruft das System diese Routine auf, wenn ein IRP_MJ_LOCK_CONTROL Vorgang für die Dateisperre abgeschlossen wird.

Anforderungen

Anforderung Wert
Header ntifs.h
IRQL APC_LEVEL

Weitere Informationen

FsRtlAllocateFileLock

FsRtlCheckLockForReadAccess

FsRtlCheckLockForWriteAccess

FsRtlFreeFileLock

FsRtlInitializeFileLock

FsRtlProcessFileLock

FsRtlUninitializeFileLock

IRP_MJ_LOCK_CONTROL

PUNLOCK_ROUTINE