Fungsi FltCheckAndGrowNameControl (fltkernel.h)

Rutinitas FltCheckAndGrowNameControl memeriksa apakah buffer dalam struktur FLT_NAME_CONTROL cukup besar untuk menahan jumlah byte yang ditentukan. Jika tidak, FltCheckAndGrowNameControl menggantinya dengan buffer yang dialokasikan sistem yang lebih besar.

Sintaks

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

Parameter

[in, out] NameCtrl

Penunjuk ke struktur FLT_NAME_CONTROL yang berisi informasi nama file.

[in] NewSize

Ukuran yang diperlukan, dalam byte, dari buffer kontrol nama baru.

Nilai kembali

FltCheckAndGrowNameControl mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti berikut ini:

Menampilkan kode Deskripsi
STATUS_INSUFFICIENT_RESOURCES
Tidak ada cukup memori di kumpulan gratis untuk memenuhi permintaan.

Keterangan

Driver minifilter tidak boleh mencoba membebaskan atau mengganti buffer di anggota Nama struktur FLT_NAME_CONTROL secara langsung. Sebagai gantinya, driver minifilter harus memanggil FltCheckAndGrowNameControl untuk mendapatkan buffer nama yang lebih besar.

Jika ukuran, dalam byte, dari buffer dalam struktur NameCtrl kurang dari nilai parameter NewSize , FltCheckAndGrowNameControl menggantinya dengan buffer yang dialokasikan sistem yang lebih besar. FltCheckAndGrowNameControl menyalin konten buffer lama ke yang baru dan membebaskan buffer lama.

Jika ukuran, dalam byte, buffer dalam struktur NameCtrl lebih besar dari atau sama dengan nilai parameter NewSize , FltCheckAndGrowNameControl mengembalikan STATUS_SUCCESS dan tidak menggantikan buffer.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header fltkernel.h (termasuk Fltkernel.h)
Pustaka FltMgr.lib
IRQL <= APC_LEVEL

Lihat juga

FLT_NAME_CONTROL

FltGetFileNameFormat

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod