Condividi tramite


Funzione FltCheckAndGrowNameControl (fltkernel.h)

La routine FltCheckAndGrowNameControl controlla se il buffer in una struttura FLT_NAME_CONTROL è sufficientemente grande da contenere il numero specificato di byte. In caso contrario, FltCheckAndGrowNameControl lo sostituisce con un buffer allocato dal sistema più grande.

Sintassi

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

Parametri

[in, out] NameCtrl

Puntatore a una struttura FLT_NAME_CONTROL contenente informazioni sul nome file.

[in] NewSize

Dimensioni obbligatorie, in byte, del nuovo buffer di controllo dei nomi.

Valore restituito

FltCheckAndGrowNameControl restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio il seguente:

Codice restituito Descrizione
STATUS_INSUFFICIENT_RESOURCES
Memoria insufficiente nel pool libero per soddisfare la richiesta.

Osservazioni

I driver minifiltro non devono tentare di liberare o sostituire il buffer nel Nome membro di una struttura FLT_NAME_CONTROL direttamente. I driver minifilter devono invece chiamare FltCheckAndGrowNameControl per ottenere un buffer dei nomi più grande.

Se le dimensioni, in byte, del buffer nella struttura NameCtrl è minore del valore del parametro NewSize, FltCheckAndGrowNameControl lo sostituisce con un buffer allocato dal sistema più grande. FltCheckAndGrowNameControl copia il contenuto del buffer precedente nel nuovo buffer e libera il vecchio buffer.

Se le dimensioni, in byte, del buffer nella struttura NameCtrl è maggiore o uguale al valore del parametro NewSize, FltCheckAndGrowNameControl restituisce STATUS_SUCCESS e non sostituisce il buffer.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione fltkernel.h (include Fltkernel.h)
libreria FltMgr.lib
IRQL <= APC_LEVEL

Vedere anche

FLT_NAME_CONTROL

FltGetFileNameFormat

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod