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:
Codice restituito | Descrizione |
---|---|
|
Memoria insufficiente nel pool libero per soddisfare la richiesta. |
Commenti
I driver minifilter non devono tentare di liberare o sostituire direttamente il buffer nel membro Name di una struttura FLT_NAME_CONTROL . 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 sono inferiori al 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 buffer precedente.
Se le dimensioni, in byte, del buffer nella struttura NameCtrl sono maggiori o uguali al valore del parametro NewSize , FltCheckAndGrowNameControl restituisce STATUS_SUCCESS e non sostituisce il buffer.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include Fltkernel.h) |
Libreria | FltMgr.lib |
IRQL | <= APC_LEVEL |