Fonction FltGetNewSystemBufferAddress (fltkernel.h)
La fonction FltGetNewSystemBufferAddress récupère la mémoire tampon AssociatedIrp.SystemBuffer, que le système de fichiers a allouée. La routine post-rappel d’un pilote de minifiltre appelle cette fonction.
Syntaxe
PVOID FLTAPI FltGetNewSystemBufferAddress(
[in] PFLT_CALLBACK_DATA CallbackData
);
Paramètres
[in] CallbackData
Pointeur vers une structure FLT_CALLBACK_DATA qui représente une opération d’E/S.
Valeur retournée
Si la mémoire tampon AssociatedIrp.SystemBuffer a été allouée par le système de fichiers, FltGetNewSystemBufferAddress retourne un pointeur vers cette mémoire tampon ; sinon, il retourne NULL.
Remarques
La routine post-rappel d’un pilote minifiltre appelle la fonction FltGetNewSystemBufferAddress pour récupérer un pointeur vers la mémoire tampon AssociatedIrp.SystemBuffer allouée par le système de fichiers. Un pilote de minifiltre doit appeler cette fonction uniquement lorsque l’indicateur FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER est défini dans CallbackData.Flags.
Lorsque le système de fichiers alloue sa propre mémoire tampon AssociatedIrp.SystemBuffer, Filter Manager définit l’indicateur FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER. Cela indique au minifiltre que la mémoire tampon qu’il a reçue lors de la préopération n’est pas celle qui contient les données lues à partir du système de fichiers.
Si l’indicateur FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER n’est pas défini, cette routine retourne null.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Microsoft Windows 7 et versions ultérieures du système d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | fltkernel.h (inclure Fltkernel.h) |
Bibliothèque | Fltmgr.lib |
DLL | Fltmgr.sys |
IRQL | <= DISPATCH_LEVEL |