Funzione FltAllocateFileLock (fltkernel.h)
La routine FltAllocateFileLock alloca e inizializza una nuova struttura FILE_LOCK.
Sintassi
PFILE_LOCK FLTAPI FltAllocateFileLock(
[in, optional] PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE CompleteLockCallbackDataRoutine,
[in, optional] PUNLOCK_ROUTINE UnlockRoutine
);
Parametri
[in, optional] CompleteLockCallbackDataRoutine
Puntatore a una routine di callback PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINEtipizzata da chiamare quando viene completata una richiesta di IRP_MJ_LOCK_CONTROL. Questo parametro è facoltativo e può essere NULL.
[in, optional] UnlockRoutine
Puntatore a una routine di callback PUNLOCK_ROUTINEtipizzata da chiamare quando l'intervallo di byte viene sbloccato. Questo parametro è facoltativo e può essere NULL.
Valore restituito
FltAllocateFileLock restituisce un puntatore alla struttura FILE_LOCK appena allocata.
Osservazioni
FltAllocateFileLock alloca una nuova struttura FILE_LOCK dal pool di paging e la inizializza.
La struttura FILE_LOCK restituita può essere usata per bloccare un intervallo di byte in un file chiamando FltProcessFileLock.
Quando la struttura FILE_LOCK non è più necessaria, può essere inizializzata chiamando FltUninitializeFileLock. La struttura di FILE_LOCK non inizializzata può quindi essere inizializzata per il riutilizzo chiamando FltInitializeFileLock.
Per liberare una struttura di FILE_LOCK inizializzata, chiamare FltFreeFileLock.
Quando il parametro CallbackData passato a FltProcessFileLock rappresenta un'operazione di I/O veloce, il callback specificato in CompleteLockCallbackDataRoutine non viene richiamato. Solo quando l'operazione di I/O in CallbackData è un IRP e CompleteLockCallbackDataRoutine non è NULL, verrà chiamata la routine di callback.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows XP SP2 |
server minimo supportato | Windows Server 2003 SP1 |
piattaforma di destinazione | Universale |
intestazione |
fltkernel.h (include Fltkernel.h) |
libreria |
FltMgr.lib |
IRQL | <= APC_LEVEL |