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 값을 반환하면 파일 잠금이 파일에서 제거됩니다.

설명

파일 시스템 필터 드라이버(레거시 필터)는 선택적으로 바이트 범위 파일 잠금에 대한 레거시 필터의 CompleteLockIrpRoutine 루틴으로 PCOMPLETE_LOCK_IRP_ROUTINE 형식 루틴을 지정할 수 있습니다.

이 루틴을 지정하기 위해 레거시 필터는 루틴에 대한 포인터를 FsRtlAllocateFileLock 또는 FsRtlInitializeFileLock에 대한 CompleteLockIrpRoutine 매개 변수로 전달합니다.

레거시 필터가 파일 잠금에 대한 CompleteLockIrpRoutine 루틴을 지정하는 경우 시스템은 파일 잠금에 대한 IRP_MJ_LOCK_CONTROL 작업을 완료할 때 이 루틴을 호출합니다.

요구 사항

요구 사항
헤더 ntifs.h
IRQL APC_LEVEL

추가 정보

FsRtlAllocateFileLock

FsRtlCheckLockForReadAccess

FsRtlCheckLockForWriteAccess

FsRtlFreeFileLock

FsRtlInitializeFileLock

FsRtlProcessFileLock

FsRtlUninitializeFileLock

IRP_MJ_LOCK_CONTROL

PUNLOCK_ROUTINE