Fungsi FltEnumerateVolumeInformation (fltkernel.h)

Rutinitas FltEnumerateVolumeInformation menyediakan informasi tentang volume yang diketahui oleh manajer filter.

Sintaks

NTSTATUS FLTAPI FltEnumerateVolumeInformation(
  [in]  PFLT_FILTER                     Filter,
  [in]  ULONG                           Index,
  [in]  FILTER_VOLUME_INFORMATION_CLASS InformationClass,
  [out] PVOID                           Buffer,
  [in]  ULONG                           BufferSize,
  [out] PULONG                          BytesReturned
);

Parameter

[in] Filter

Penunjuk filter buram untuk driver minifilter. Pointer ini secara unik mengidentifikasi driver minifilter dan tetap konstan selama driver minifilter dimuat.

[in] Index

Indeks volume berbasis nol yang diminta informasinya.

[in] InformationClass

Jenis informasi yang diminta. Parameter ini dapat memiliki salah satu nilai berikut.

Nilai Makna
FilterVolumeBasicInformation Parameter Buffer menerima struktur FILTER_VOLUME_BASIC_INFORMATION untuk volume.
FilterVolumeStandardInformation Parameter Buffer menerima struktur FILTER_VOLUME_STANDARD_INFORMATION untuk volume. Struktur ini tersedia dimulai dengan Windows Vista.

[out] Buffer

Arahkan ke buffer yang dialokasikan penelepon yang menerima informasi yang diminta. Jenis informasi yang dikembalikan dalam buffer ditentukan oleh parameter InformationClass .

[in] BufferSize

Ukuran, dalam byte, dari buffer yang dirujuk parameter Buffer . Pemanggil harus mengatur parameter ini sesuai dengan nilai InformationClass yang diberikan.

[out] BytesReturned

Penunjuk ke variabel yang dialokasikan pemanggil yang menerima jumlah byte yang dikembalikan dalam buffer yang dituju Buffer . Jika nilai input BufferSize terlalu kecil, FltEnumerateVolumeInformation mengembalikan STATUS_BUFFER_TOO_SMALL dan mengatur variabel ini ke jumlah byte yang diperlukan untuk menyimpan informasi yang diminta. Parameter ini diperlukan dan tidak boleh NULL.

Nilai kembali

FltEnumerateVolumeInformation mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai, seperti salah satu hal berikut:

Menampilkan kode Deskripsi
STATUS_BUFFER_TOO_SMALL
Buffer yang dirujuk parameter Buffer tidak cukup besar untuk menyimpan informasi yang diminta. Ini adalah kode kesalahan.
STATUS_FLT_DELETING_OBJECT
Volume yang cocok ditemukan, tetapi sedang dicairkan. Ini adalah kode kesalahan.
STATUS_INVALID_PARAMETER
Nilai yang tidak valid ditentukan untuk parameter InformationClass . Misalnya, jika FilterVolumeStandardInformation ditentukan pada sistem operasi sebelum Windows Vista, rutin mengembalikan STATUS_INVALID_PARAMETER. Ini adalah kode kesalahan.
STATUS_NO_MORE_ENTRIES
Tidak ada lagi entri dalam daftar volume global. Ini adalah kode peringatan.

Keterangan

Menggunakan parameter Indeks hanyalah cara untuk rutinitas FltEnumerateVolumeInformation untuk memilih di antara volume dalam daftar volume global manajer filter. Dua panggilan ke FltEnumerateVolumeInformation dengan nilai parameter Indeks yang sama tidak selalu mengembalikan hasil yang sama karena volume dapat dipasang atau dilepas kapan saja.

Jika FltEnumerateVolumeInformation digunakan untuk membuat daftar struktur informasi volume, dimungkinkan bagi dua atau beberapa struktur ini untuk berisi nama volume yang identik. Untuk informasi selengkapnya, lihat Memahami Enumerasi Volume dengan Nama Volume Duplikat.

Untuk menghitung semua driver minifilter terdaftar, panggil FltEnumerateFilters.

Untuk menghitung semua volume yang diketahui oleh manajer filter, panggil FltEnumerateVolumes.

Untuk mencantumkan informasi filter untuk semua driver minifilter terdaftar, panggil FltEnumerateFilterInformation.

Untuk mendapatkan informasi filter untuk driver minifilter tertentu, panggil FltGetFilterInformation.

Untuk menghitung semua instans driver minifilter tertentu, panggil FltEnumerateInstanceInformationByFilter.

Untuk menghitung semua instans driver minifilter pada volume tertentu, panggil FltEnumerateInstanceInformationByVolume.

Untuk menghitung instans semua driver minifilter pada semua volume, panggil FltEnumerateInstances.

Persyaratan

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

Lihat juga

FILTER_VOLUME_BASIC_INFORMATION

FILTER_VOLUME_STANDARD_INFORMATION

FltEnumerateFilterInformation

FltEnumerateFilters

FltEnumerateInstanceInformationByFilter

FltEnumerateInstanceInformationByVolume

FltEnumerateInstances

FltEnumerateVolumes

FltGetFilterInformation