Función FsRtlInitializeFileLock (ntifs.h)
La rutina FsRtlInitializeFileLock inicializa una estructura de FILE_LOCK.
Sintaxis
void FsRtlInitializeFileLock(
[in] PFILE_LOCK FileLock,
[in, optional] PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine,
[in, optional] PUNLOCK_ROUTINE UnlockRoutine
);
Parámetros
[in] FileLock
Puntero a una estructura de FILE_LOCK sin inicializar.
[in, optional] CompleteLockIrpRoutine
Puntero a una rutina de devolución de llamada con tipo PCOMPLETE_LOCK_IRP_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 va a llamar cuando se desbloquea el intervalo de bytes. Este parámetro es opcional y puede ser NULL.
Valor devuelto
None
Observaciones
FsRtlInitializeFileLock inicializa una estructura de FILE_LOCK sin inicializar.
Es un error de programación llamar a FsRtlInitializeFileLock para una estructura de FILE_LOCK que FsRtlInitializeFileLock o FltAllocateFileLock ya ha inicializado mediante una llamada posterior a FsRtlUninitializeFileLock.
Una vez inicializado, la estructura de FILE_LOCK se puede usar para bloquear un intervalo de bytes en un archivo llamando a FsRtlProcessFileLock oFsRtlFastLock. FsRtlProcessFileLock procesa IRP de bloqueo. FsRtlFastLock realiza bloqueos que no son IRP.
Cuando la estructura de FILE_LOCK ya no es necesaria, se puede anular la inicialización llamando a FsRtlUninitializeFileLock. La estructura de FILE_LOCK sin inicializar se puede inicializar para su reutilización llamando a FsRtlInitializeFileLock.
Los minifiltros deben llamar a FltInitializeFileLock en lugar de FsRtlInitializeFileLock.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
Reglas de cumplimiento de DDI | HwStorPortProhibitedDDIs(storport) |