Partilhar via


Função FltIsIoRedirectionAllowedForOperation (fltkernel.h)

A rotina FltIsIoRedirectionAllowedForOperation determina se a E/S pode ser redirecionada da instância de filtro associada à estrutura de FLT_CALLBACK_DATA especificada para a instância de filtro especificada.

Sintaxe

NTSTATUS FLTAPI FltIsIoRedirectionAllowedForOperation(
  [in]            PFLT_CALLBACK_DATA Data,
  [in]            PFLT_INSTANCE      TargetInstance,
  [out]           PBOOLEAN           RedirectionAllowedThisIo,
  [out, optional] PBOOLEAN           RedirectionAllowedAllIo
);

Parâmetros

[in] Data

Uma estrutura FLT_CALLBACK_DATA que representa a operação de E/S.

[in] TargetInstance

Uma instância de filtro na pilha do dispositivo de destino.

[out] RedirectionAllowedThisIo

Um valor de VERDADEIRO se essa E/S puder ser redirecionada para a pilha de dispositivos de destino alterando a instância de filtro referenciada.

[out, optional] RedirectionAllowedAllIo

Esse parâmetro opcional tem um valor de VERDADEIRO se todas as E/Ss para a pilha de dispositivos à qual a operação de E/S é emitida puderem ser redirecionadas para o dispositivo de destino alterando a instância de filtro referenciada, caso contrário, false.

Valor de retorno

Um valor NTSTATUS de STATUS_SUCCESS para êxito ou STATUS_NOT_SUPPORTED se não houver suporte para o redirecionamento.

Observações

Uma operação de E/S está associada a uma estrutura de FLT_CALLBACK_DATA. Essa estrutura contém uma referência a um objeto PFLT_IO_PARAMETER_BLOCK, que contém uma referência à FLT_INSTANCE do minifiltro associado à operação de E/S.

Se RedirectionAllowed for verdadeiro, o minifiltro poderá redirecionar a E/S alterando essa instância para uma nova instância de destino.

Se RedirectionAllowed for false, o minifiltro precisará alocar um novo objeto de dados de retorno de chamada para emitir E/S na pilha de destino ou chamar FltAdjustDeviceStackSizeForIoRedirection para aumentar o tamanho da pilha do dispositivo de origem.

Observação Minifiltros não devem modificar a referência à FLT_INSTANCE antes de verificar se o redirecionamento pode ser feito dessa maneira. Use FltIsIoRedirectionAllowedForOperation ou FltIsIoRedirectionAllowed.
 

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows 7 e versões posteriores do sistema operacional Windows.
da Plataforma de Destino Universal
cabeçalho fltkernel.h (inclua FltKernel.h)
biblioteca FltMgr.lib
de DLL Fltmgr.sys
IRQL <=DISPATCH_LEVEL

Consulte também

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FltAdjustDeviceStackSizeForIoRedirection

FltIsIoRedirectionAllowed