Compartir a través de


Función FltAllocateFileLock (fltkernel.h)

La rutina FltAllocateFileLock asigna e inicializa una nueva estructura de FILE_LOCK .

Sintaxis

PFILE_LOCK FLTAPI FltAllocateFileLock(
  [in, optional] PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE CompleteLockCallbackDataRoutine,
  [in, optional] PUNLOCK_ROUTINE                          UnlockRoutine
);

Parámetros

[in, optional] CompleteLockCallbackDataRoutine

Puntero a una rutina de devolución de llamada con tipo PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE que se llamará cuando se complete una solicitud de IRP_MJ_LOCK_CONTROL . Este parámetro es opcional y puede ser NULL.

[in, optional] UnlockRoutine

Puntero a una rutina de devolución de llamada con tipo PUNLOCK_ROUTINE que se llamará cuando se desbloquea el intervalo de bytes. Este parámetro es opcional y puede ser NULL.

Valor devuelto

FltAllocateFileLock devuelve un puntero a la estructura de FILE_LOCK recién asignada.

Comentarios

FltAllocateFileLock asigna una nueva estructura de FILE_LOCK del grupo paginado y la inicializa.

La estructura de FILE_LOCK devuelta se puede usar para bloquear un intervalo de bytes en un archivo llamando a FltProcessFileLock.

Cuando la estructura de FILE_LOCK ya no es necesaria, se puede anular inicializar llamando a FltUninitializeFileLock. La estructura de FILE_LOCK sin inicializar se puede inicializar para su reutilización mediante una llamada a FltInitializeFileLock.

Para liberar una estructura de FILE_LOCK inicializada, llame a FltFreeFileLock.

Cuando el parámetro CallbackData pasado a FltProcessFileLock representa una operación de E/S rápida, no se invoca la devolución de llamada especificada en CompleteLockCallbackDataRoutine . Solo cuando la operación de E/S en CallbackData es un IRP y CompleteLockCallbackDataRoutine no es NULL, se llamará a la rutina de devolución de llamada.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP SP2
Servidor mínimo compatible Windows Server 2003 SP1
Plataforma de destino Universal
Encabezado fltkernel.h (incluya Fltkernel.h)
Library FltMgr.lib
IRQL <= APC_LEVEL

Consulte también

FILE_LOCK

FltCheckLockForReadAccess

FltCheckLockForWriteAccess

FltFreeFileLock

FltInitializeFileLock

FltProcessFileLock

FltUninitializeFileLock

FsRtlAllocateFileLock

IRP_MJ_LOCK_CONTROL

PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE

PUNLOCK_ROUTINE