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 |
---|---|
|
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 |