Compartir a través de


Función FltCheckAndGrowNameControl (fltkernel.h)

La rutina FltCheckAndGrowNameControl comprueba si el búfer de una estructura de FLT_NAME_CONTROL es lo suficientemente grande como para contener el número especificado de bytes. Si no es así, FltCheckAndGrowNameControl lo reemplaza por un búfer asignado por el sistema mayor.

Sintaxis

NTSTATUS FLTAPI FltCheckAndGrowNameControl(
  [in, out] PFLT_NAME_CONTROL NameCtrl,
  [in]      USHORT            NewSize
);

Parámetros

[in, out] NameCtrl

Puntero a una estructura de FLT_NAME_CONTROL que contiene información de nombre de archivo.

[in] NewSize

Tamaño necesario, en bytes, del nuevo búfer de control de nombres.

Valor devuelto

FltCheckAndGrowNameControl devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como el siguiente:

Código devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES
No hay memoria suficiente en el grupo libre para satisfacer la solicitud.

Observaciones

Los controladores de minifiltro no deben intentar liberar ni reemplazar el búfer en el Nombre miembro de una estructura de FLT_NAME_CONTROL directamente. En su lugar, los controladores de minifiltro deben llamar a FltCheckAndGrowNameControl para obtener un búfer de nombres mayor.

Si el tamaño, en bytes, del búfer en la estructura NameCtrl es menor que el valor del parámetro NewSize, FltCheckAndGrowNameControl lo reemplaza por un búfer asignado por el sistema mayor. FltCheckAndGrowNameControl copia el contenido del búfer antiguo en el nuevo y libera el búfer anterior.

Si el tamaño, en bytes, del búfer del NameCtrl estructura es mayor o igual que el valor del parámetro NewSize, FltCheckAndGrowNameControl devuelve STATUS_SUCCESS y no reemplaza el búfer.

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de fltkernel.h (incluya Fltkernel.h)
biblioteca de FltMgr.lib
irQL <= APC_LEVEL

Consulte también

FLT_NAME_CONTROL

FltGetFileNameFormat

fltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod