Partager via


FltIsIoRedirectionAllowedForOperation, fonction (fltkernel.h)

La routine FltIsIoRedirectionAllowedForOperation détermine si les E/S peuvent être redirigées à partir de l’instance de filtre associée à la structure FLT_CALLBACK_DATA spécifiée vers l’instance de filtre spécifiée.

Syntaxe

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

Paramètres

[in] Data

Structure FLT_CALLBACK_DATA représentant l’opération d’E/S.

[in] TargetInstance

Instance de filtre sur la pile d’appareils cible.

[out] RedirectionAllowedThisIo

Valeur TRUE si ces E/S peuvent être redirigées vers la pile d’appareils cible en modifiant l’instance de filtre référencée.

[out, optional] RedirectionAllowedAllIo

Ce paramètre facultatif a une valeur de TRUE si toutes les E/S vers la pile d’appareils vers laquelle l’opération d’E/S est émise peuvent être redirigées vers l’appareil cible en modifiant l’instance de filtre référencée, sinon FALSE.

Valeur de retour

Valeur NTSTATUS de STATUS_SUCCESS de réussite ou de STATUS_NOT_SUPPORTED si la redirection n’est pas prise en charge.

Remarques

Une opération d’E/S est associée à une structure FLT_CALLBACK_DATA. Cette structure contient une référence à un objet PFLT_IO_PARAMETER_BLOCK, qui contient une référence à l’FLT_INSTANCE du minifilter associé à l’opération d’E/S.

Si RedirectionAllowed est TRUE, le minifilter peut rediriger les E/S en modifiant cette instance vers une nouvelle instance cible.

Si RedirectionAllowed est FALSE, le minifilter doit allouer un nouvel objet de données de rappel pour émettre des E/S sur la pile cible ou appeler FltAdjustDeviceStackSizeForIoRedirection pour augmenter la taille de la pile d’appareils source.

Remarque mini-filtres ne doivent pas modifier la référence au FLT_INSTANCE avant de vérifier que la redirection peut être effectuée de cette façon. Utilisez FltIsIoRedirectionAllowedForOperation ou FltIsIoRedirectionAllowed.
 

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows 7 et versions ultérieures du système d’exploitation Windows.
plateforme cible Universel
d’en-tête fltkernel.h (include FltKernel.h)
bibliothèque FltMgr.lib
DLL Fltmgr.sys
IRQL <=DISPATCH_LEVEL

Voir aussi

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FltAdjustDeviceStackSizeForIoRedirection

FltIsIoRedirectionAllowed