Freigeben über


FltCheckAndGrowNameControl-Funktion (fltkernel.h)

Die FltCheckAndGrowNameControl Routine überprüft, ob der Puffer in einer FLT_NAME_CONTROL Struktur groß genug ist, um die angegebene Anzahl von Bytes aufzunehmen. Wenn nicht, ersetzt FltCheckAndGrowNameControl sie durch einen größeren vom System zugewiesenen Puffer.

Syntax

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

Parameter

[in, out] NameCtrl

Zeigen Sie auf eine FLT_NAME_CONTROL Struktur, die Dateinameninformationen enthält.

[in] NewSize

Erforderliche Größe des neuen Namenssteuerelementpuffers in Byte.

Rückgabewert

FltCheckAndGrowNameControl gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert wie den folgenden zurück:

Rückgabecode Beschreibung
STATUS_INSUFFICIENT_RESOURCES
Es ist nicht genügend Arbeitsspeicher im freien Pool vorhanden, um die Anforderung zu erfüllen.

Bemerkungen

Minifiltertreiber dürfen nicht versuchen, den Puffer im Name Element einer FLT_NAME_CONTROL Struktur direkt frei zu geben oder zu ersetzen. Stattdessen sollten Minifiltertreiber FltCheckAndGrowNameControl- aufrufen, um einen größeren Namenspuffer abzurufen.

Wenn die Größe des Puffers in Byte in der NameCtrl- Struktur kleiner als der Wert des NewSize-Parameter ist, ersetzt FltCheckAndGrowNameControl ihn durch einen größeren vom System zugewiesenen Puffer. FltCheckAndGrowNameControl kopiert den Inhalt des alten Puffers in den neuen Puffer und gibt den alten Puffer frei.

Wenn die Größe des Puffers in Byte in der NameCtrl- Struktur größer oder gleich dem Wert des NewSize-Parameters ist, gibt FltCheckAndGrowNameControl STATUS_SUCCESS zurück und ersetzt den Puffer nicht.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- fltkernel.h (include Fltkernel.h)
Library FltMgr.lib
IRQL- <= APC_LEVEL

Siehe auch

FLT_NAME_CONTROL

FltGetFileNameFormat-

FltGetFileNameInformation

FltGetFileNameInformationUnsafe-

FltGetFileNameQueryMethod