Função FltAllocateFileLock (fltkernel.h)
A rotina
Sintaxe
PFILE_LOCK FLTAPI FltAllocateFileLock(
[in, optional] PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE CompleteLockCallbackDataRoutine,
[in, optional] PUNLOCK_ROUTINE UnlockRoutine
);
Parâmetros
[in, optional] CompleteLockCallbackDataRoutine
Ponteiro para uma rotina de retorno de chamada com tipo PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINEa ser chamada quando uma solicitação de IRP_MJ_LOCK_CONTROL for concluída. Esse parâmetro é opcional e pode ser NULL.
[in, optional] UnlockRoutine
Ponteiro para uma rotina de retorno de chamada com tipo PUNLOCK_ROUTINEa ser chamada quando o intervalo de bytes é desbloqueado. Esse parâmetro é opcional e pode ser NULL.
Valor de retorno
FltAllocateFileLock retorna um ponteiro para a estrutura de FILE_LOCK recém-alocada.
Observações
FltAllocateFileLock aloca uma nova estrutura de FILE_LOCK do pool de páginas e a inicializa.
A estrutura de FILE_LOCK retornada pode ser usada para bloquear um intervalo de bytes em um arquivo chamando FltProcessFileLock.
Quando a estrutura de FILE_LOCK não é mais necessária, ela pode ser não inicializada chamando FltUninitializeFileLock. A estrutura de FILE_LOCK não inicializada pode ser inicializada para reutilização chamando FltInitializeFileLock .
Para liberar uma estrutura de FILE_LOCK inicializada, chame FltFreeFileLock .
Quando o parâmetro CallbackData passado para FltProcessFileLock representa uma operação de E/S rápida, o retorno de chamada especificado em CompleteLockCallbackDataRoutine não é invocado. Somente quando a operação de E/S no CallbackData for um IRP e CompleteLockCallbackDataRoutine não for NULL, a rotina de retorno de chamada será chamada.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP SP2 |
servidor com suporte mínimo | Windows Server 2003 SP1 |
da Plataforma de Destino |
Universal |
cabeçalho | fltkernel.h (inclua Fltkernel.h) |
biblioteca | FltMgr.lib |
IRQL | <= APC_LEVEL |