Compartilhar via


PCOMPLETE_LOCK_IRP_ROUTINE função de retorno de chamada (ntifs.h)

Um driver de filtro do sistema de arquivos (filtro herdado) pode registrar uma rotina PCOMPLETE_LOCK_IRP_ROUTINEtipada como o completeLockIrpRoutine do filtro retorno de chamada.

Sintaxe

PCOMPLETE_LOCK_IRP_ROUTINE PcompleteLockIrpRoutine;

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

Parâmetros

Context

[in] Ponteiro de contexto que foi passado para FsRtlProcessFileLock .

Irp

[in] IRP para o bloqueio de arquivo IRP_MJ_LOCK_CONTROL solicitação que está sendo concluída. O tipo de solicitação de bloqueio será um dos seguintes:

  • IRP_MN_LOCK
  • IRP_MN_UNLOCK_ALL
  • IRP_MN_UNLOCK_ALL_BY_KEY
  • IRP_MN_UNLOCK_SINGLE

Valor de retorno

Essa rotina retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado. Se ele retornar um valor NTSTATUS que não é um código de êxito, o bloqueio de arquivo será removido do arquivo.

Observações

Um driver de filtro do sistema de arquivos (filtro herdado) pode, opcionalmente, especificar uma rotina tipo PCOMPLETE_LOCK_IRP_ROUTINE como completeLockIrpRoutine do filtro herdado rotina para um bloqueio de arquivo de intervalo de bytes.

Para especificar essa rotina, um filtro herdado passa um ponteiro para a rotina como o parâmetro CompleteLockIrpRoutine para FsRtlAllocateFileLock ou FsRtlInitializeFileLock.

Se o filtro herdado especificar uma rotina CompleteLockIrpRoutine para um bloqueio de arquivo, o sistema chamará essa rotina ao concluir uma operação de IRP_MJ_LOCK_CONTROL para o bloqueio de arquivo.

Requisitos

Requisito Valor
cabeçalho ntifs.h
IRQL APC_LEVEL

Consulte também

FsRtlAllocateFileLock

FsRtlCheckLockForReadAccess

FsRtlCheckLockForWriteAccess

FsRtlFreeFileLock

FsRtlInitializeFileLock

FsRtlProcessFileLock

FsRtlUninitializeFileLock

IRP_MJ_LOCK_CONTROL

PUNLOCK_ROUTINE