Función FltGetNewSystemBufferAddress (fltkernel.h)
La función FltGetNewSystemBufferAddress recupera el búfer AssociatedIrp.SystemBuffer, que el sistema de archivos ha asignado. Una rutina de devolución de llamada posterior al controlador minifiltro llama a esta función.
Sintaxis
PVOID FLTAPI FltGetNewSystemBufferAddress(
[in] PFLT_CALLBACK_DATA CallbackData
);
Parámetros
[in] CallbackData
Puntero a una estructura de FLT_CALLBACK_DATA que representa una operación de E/S.
Valor devuelto
Si el sistema de archivos asignó el búfer AssociatedIrp.SystemBuffer, FltGetNewSystemBufferAddress devuelve un puntero a este búfer; de lo contrario, devuelve NULL.
Comentarios
Una rutina de devolución de llamada posterior al controlador minifilter llama a la función FltGetNewSystemBufferAddress para recuperar un puntero al búfer AssociatedIrp.SystemBuffer que el sistema de archivos ha asignado. Un controlador de minifiltro debe llamar a esta función solo cuando la marca de FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER está establecida en CallbackData.Flags.
Cuando el sistema de archivos asigna su propio búfer AssociatedIrp.SystemBuffer, el Administrador de filtros establecerá la marca de FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER. Esto indica al minifiltro que el búfer que recibió en la operación previa no es el que tiene los datos leídos del sistema de archivos.
Si no se establece la marca FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER, esta rutina devuelve NULL.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Microsoft Windows 7 y versiones posteriores del sistema operativo Windows. |
Plataforma de destino | Universal |
Encabezado | fltkernel.h (incluya Fltkernel.h) |
Library | Fltmgr.lib |
Archivo DLL | Fltmgr.sys |
IRQL | <= DISPATCH_LEVEL |