Função FltReuseCallbackData (fltkernel.h)
A rotina FltReuseCallbackData reinicializa uma estrutura de dados de retorno de chamada para que possa ser reutilizada.
Sintaxe
VOID FLTAPI FltReuseCallbackData(
[in, out] PFLT_CALLBACK_DATA CallbackData
);
Parâmetros
[in, out] CallbackData
Ponteiro para a estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA) a ser reutilizado. Essa estrutura deve ter sido alocada por uma chamada anterior para FltAllocateCallbackData . Esse parâmetro é necessário e não pode ser NULL.
Valor de retorno
Nenhum
Observações
FltReuseCallbackData reinicializa uma estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA) para que possa ser usada em uma nova operação de E/S. FltReuseCallbackData não altera o campo TargetInstance ou o campo TargetFileObject do bloco de parâmetros de E/S da estrutura de dados de retorno de chamada.
A rotina FltReuseCallbackData libera qualquer cadeia de de MDL associada ao objeto CallbackData fornecido. Um ponteiro para uma cadeia de MDL associada a um objeto FLT_CALLBACK_DATA será inválido após uma chamada para FltReuseCallbackData para esse objeto.
Usar FltReuseCallbackData para reutilizar uma estrutura de dados de retorno de chamada é mais rápido do que liberar a estrutura e alocar uma nova.
Um driver de minifiltro deve usar FltReuseCallbackData somente em uma estrutura de dados de retorno de chamada que o driver de minifiltro alocou anteriormente com FltAllocateCallbackData e usado em uma chamada para FltPerformSynchronousIo ou FltPerformAsynchronousIo.
Se a estrutura de dados de retorno de chamada tiver sido usada para E/S assíncrona, o driver de minifiltro não deverá chamar FltReuseCallbackData até que o CallbackRoutine especificado na chamada para FltPerformAsynchronousIo.
Em particular, um driver de minifiltro não deve usar essa rotina para estruturas de dados de retorno de chamada não alocadas pelo próprio driver de minifiltro.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | fltkernel.h (inclua Fltkernel.h) |
biblioteca | FltMgr.lib |
de DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |