Fungsi FltEnumerateVolumes (fltkernel.h)
FltEnumerateVolumes rutin menghitung semua volume dalam sistem.
Sintaks
NTSTATUS FLTAPI FltEnumerateVolumes(
[in] PFLT_FILTER Filter,
[out] PFLT_VOLUME *VolumeList,
[in] ULONG VolumeListSize,
[out] PULONG NumberVolumesReturned
);
Parameter
[in] Filter
Penunjuk filter buram untuk pemanggil. Parameter ini diperlukan dan tidak boleh NULL.
[out] VolumeList
Penunjuk ke buffer yang dialokasikan penelepon yang menerima array penunjuk volume buram. Parameter ini bersifat opsional dan dapat berupa NULL jika VolumeListSize adalah nol. Jika VolumeListSize nol pada input dan VolumeList ADALAH NULL, NumberVolumesReturned menerima jumlah volume yang ditemukan.
[in] VolumeListSize
Jumlah penunjuk filter buram yang dapat ditahan oleh buffer yang dapat ditahan oleh VolumeList . Parameter ini bersifat opsional dan bisa nol. Jika VolumeListSize nol pada input dan VolumeList ADALAH NULL, NumberVolumesReturned menerima jumlah volume yang ditemukan.
[out] NumberVolumesReturned
Penunjuk ke variabel yang dialokasikan pemanggil yang menerima jumlah penunjuk volume buram yang dikembalikan dalam array yang dituju VolumeList . Jika VolumeListSize terlalu kecil dan VolumeList bukan NULL pada input, FltEnumerateVolumes mengembalikan STATUS_BUFFER_TOO_SMALL dan mengatur NumberVolumesReturned untuk menunjuk ke jumlah volume yang ditemukan. Parameter ini diperlukan dan tidak boleh NULL.
Nilai kembali
FltEnumerateVolumes mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti berikut ini:
Menampilkan kode | Deskripsi |
---|---|
|
Buffer yang dituju parameter VolumeList tidak cukup besar untuk menyimpan informasi yang diminta. Ini adalah kode kesalahan. |
Keterangan
Karena konten daftar volume manajer filter dapat berubah kapan saja, dua panggilan ke FltEnumerateVolumes tidak dijamin untuk mengembalikan hasil yang sama.
FltEnumerateVolumes menambahkan referensi rundown ke setiap penunjuk volume buram yang dikembalikan dalam array yang dituju VolumeList . Ketika pointer ini tidak lagi diperlukan, pemanggil harus melepaskannya dengan memanggil FltObjectDereference pada masing-masing. Dengan demikian setiap panggilan yang berhasil ke FltEnumerateVolumes harus dicocokkan dengan panggilan berikutnya ke FltObjectDereference untuk setiap penunjuk volume yang dikembalikan.
Untuk mengonversi satu atau beberapa pointer volume buram yang dikembalikan oleh parameter VolumeList menjadi informasi volume, panggil FltGetVolumeInformation.
Untuk mencantumkan informasi volume untuk semua volume yang diketahui oleh manajer filter, panggil FltEnumerateVolumeInformation.
Untuk menghitung semua driver minifilter terdaftar, panggil FltEnumerateFilters.
Untuk menghitung semua instans driver minifilter, panggil FltEnumerateInstances.
Untuk menghitung semua instans driver minifilter pada volume tertentu, panggil FltEnumerateInstanceInformationByVolume.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | fltkernel.h (termasuk FltKernel.h) |
Pustaka | FltMgr.lib |
IRQL | <= APC_LEVEL |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk