PCOMPLETE_LOCK_IRP_ROUTINE回调函数 (ntifs.h)

文件系统筛选器驱动程序(旧筛选器)可以将 PCOMPLETE_LOCK_IRP_ROUTINE类型例程注册为筛选器的 CompleteLockIrpRoutine 回调。

语法

PCOMPLETE_LOCK_IRP_ROUTINE PcompleteLockIrpRoutine;

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

参数

Context

[in]传递给 FsRtlProcessFileLock的上下文指针。

Irp

[in]正在完成的文件锁定 IRP_MJ_LOCK_CONTROL 请求的 IRP。 锁定请求类型将是下列类型之一:

  • IRP_MN_LOCK
  • IRP_MN_UNLOCK_ALL
  • IRP_MN_UNLOCK_ALL_BY_KEY
  • IRP_MN_UNLOCK_SINGLE

返回值

此例程返回STATUS_SUCCESS或适当的 NTSTATUS 值。 如果它返回非成功代码的 NTSTATUS 值,则会从文件中删除文件锁。

言论

文件系统筛选器驱动程序(旧筛选器)可以选择将PCOMPLETE_LOCK_IRP_ROUTINE类型的例程指定为旧筛选器的 CompleteLockIrpRoutine 例程作为字节范围文件锁。

若要指定此例程,旧筛选器会将指向例程的指针作为 CompleteLockIrpRoutine 参数传递给 FsRtlAllocateFileLockFsRtlInitializeFileLock

如果旧筛选器为文件锁指定 CompleteLockIrpRoutine 例程,则系统在完成文件锁的 IRP_MJ_LOCK_CONTROL 操作时调用此例程。

要求

要求 价值
标头 ntifs.h
IRQL APC_LEVEL

另请参阅

FsRtlAllocateFileLock

FsRtlCheckLockForReadAccess

FsRtlCheckLockForWriteAccess

FsRtlFreeFileLock

FsRtlInitializeFileLock

FsRtlProcessFileLock

FsRtlUninitializeFileLock

IRP_MJ_LOCK_CONTROL

PUNLOCK_ROUTINE