PFLT_SECTION_CONFLICT_NOTIFICATION_CALLBACK función de devolución de llamada (fltkernel.h)

Un controlador de minifiltro puede registrar opcionalmente una rutina de tipo PFLT_SECTION_CONFLICT_NOTIFICATION_CALLBACK como la rutina SectionNotificationCallback del controlador de minifiltro. Algunas operaciones de archivo no son compatibles con las secciones de archivo. Si un minifiltro proporciona una rutina SectionNotificationCallback , se llama a la devolución de llamada cuando se producen conflictos de sección.

Sintaxis

PFLT_SECTION_CONFLICT_NOTIFICATION_CALLBACK PfltSectionConflictNotificationCallback;

NTSTATUS PfltSectionConflictNotificationCallback(
  [in] PFLT_INSTANCE Instance,
  [in] PFLT_CONTEXT SectionContext,
  [in] PFLT_CALLBACK_DATA Data
)
{...}

Parámetros

[in] Instance

Puntero de instancia opaco a la instancia del controlador de minifiltro que está iniciando la operación de E/S.

[in] SectionContext

Puntero al contexto de sección en el que se incurrió en un conflicto de sección de análisis de datos.

[in] Data

Puntero a una estructura asignada por el autor de la llamada que contiene los datos de devolución de llamada.

Valor devuelto

Esta rutina de devolución de llamada devuelve STATUS_SUCCESS.

Comentarios

Un minifiltro registra las notificaciones de conflictos de sección estableciendo una rutina de PFLT_SECTION_CONFLICT_NOTIFICATION_CALLBACK en el miembro SectionNotificationCallback de la estructura FLT_REGISTRATION al registrar un controlador de minifiltro.

Se pueden producir ciertas situaciones en las que mantener abierta una sección no es compatible con la E/S del archivo actual. En concreto, la E/S de archivos que desencadena una purga de caché puede provocar la incoherencia de la caché si se impide la purga de caché debido a una sección abierta. Un minifiltro puede proporcionar esta rutina de devolución de llamada opcional para las notificaciones de estos eventos. Cuando se recibe una notificación, la sección se puede cerrar para permitir que la operación de E/S en conflicto continúe.

Requisitos

Requisito Value
Cliente mínimo compatible La rutina de devolución de llamada PFLT_CONTEXT_ALLOCATE_CALLBACK está disponible en Windows 8 y versiones posteriores.
Plataforma de destino Escritorio
Encabezado fltkernel.h (incluya Fltkernel.h)
IRQL PASSIVE_LEVEL

Consulte también

FLT_CALLBACK_DATA

FLT_REGISTRATION

FltCreateSectionForDataScan

FltRegisterFilter