Função FltPerformSynchronousIo (fltkernel.h)
Um driver de minifiltro chama FltPerformSynchronousIo para iniciar uma operação de E/S síncrona depois de chamar FltAllocateCallbackData para alocar uma estrutura de dados de retorno de chamada para a operação.
Sintaxe
VOID FLTAPI FltPerformSynchronousIo(
[in, out] PFLT_CALLBACK_DATA CallbackData
);
Parâmetros
[in, out] CallbackData
Ponteiro para uma estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA) alocada por uma chamada anterior para FltAllocateCallbackData . Esse parâmetro é necessário e não pode ser NULL. O chamador é responsável por liberar essa estrutura quando ela não é mais necessária chamando FltFreeCallbackData.
Valor de retorno
Nenhum
Observações
Um driver de minifiltro chama FltPerformSynchronousIo para iniciar uma operação de E/S síncrona.
Os drivers de minifiltro só podem iniciar operações de E/S baseadas em IRP. Eles não podem iniciar operações rápidas de retorno de chamada de E/S ou FSFilter (filtro do sistema de arquivos).
fltPerformSynchronousIo envia a operação de E/S somente para as instâncias de driver de minifiltro anexadas abaixo da instância de início (especificada no parâmetro da Instância para FltAllocateCallbackData ) e o sistema de arquivos. Os drivers de minifiltro anexados acima da instância especificada não recebem a operação de E/S.
Os drivers de minifiltro devem usar FltPerformSynchronousIo somente em casos em que rotinas como a seguinte não podem ser usadas:
Depois que fltPerformSynchronousIo retorna, o chamador pode reemissar a operação de E/S chamando FltReissueSynchronousIo. Como alternativa, o chamador pode liberar a estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA) chamando FltFreeCallbackData ou prepará-la para ser reutilizado chamando FltReuseCallbackData.
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 |