Fungsi NdisEnumerateFilterModules (ndis.h)
Fungsi NdisEnumerateFilterModules menghitung semua modul filter dan memfilter instans driver perantara dalam tumpukan filter.
Sintaks
NDIS_STATUS NdisEnumerateFilterModules(
[in] NDIS_HANDLE NdisHandle,
[in] PVOID InterfaceBuffer,
[in] ULONG InterfaceBufferLength,
[in, out] PULONG BytesNeeded,
[in, out] PULONG BytesWritten
);
Parameter
[in] NdisHandle
Handel NDIS yang diperoleh selama inisialisasi pemanggil. Untuk informasi selengkapnya tentang handel ini, lihat Mendapatkan Handel Kumpulan.
Jika handel adalah handel adaptor miniport NDIS, NDIS mengembalikan informasi tentang semua modul antarmuka yang saat ini terpasang pada adaptor miniport, dimulai dengan modul filter paling atas.
Jika handel adalah handel pengikatan NDIS, NDIS mengembalikan informasi tentang semua modul filter yang saat ini dilampirkan ke adaptor miniport yang mendasar, dimulai dengan modul filter paling atas.
Jika handel adalah handel modul filter NDIS, NDIS mengembalikan informasi tentang semua modul filter yang saat ini dilampirkan ke adaptor miniport yang mendasar tempat modul filter yang ditentukan dilampirkan, dimulai dengan modul filter terbanyak.
[in] InterfaceBuffer
Penunjuk ke blok memori yang dialokasikan pemanggil di mana NDIS mengembalikan informasi untuk semua modul filter dalam tumpukan filter, dimulai dengan filter paling atas. Buffer ini berisi struktur NDIS_ENUM_FILTERS yang diikuti oleh nol atau lebih struktur NDIS_FILTER_INTERFACE , satu untuk setiap modul filter dalam tumpukan.
[in] InterfaceBufferLength
Panjangnya, dalam byte, dari blok memori yang disediakan pemanggil di anggota InterfaceBuffer .
[in, out] BytesNeeded
Penunjuk ke variabel yang disediakan penelepon di mana NDIS menulis jumlah total byte yang diperlukan NDIS untuk berhasil mengembalikan informasi antarmuka untuk semua filter dalam tumpukan filter.
[in, out] BytesWritten
Penunjuk ke variabel yang disediakan penelepon di mana NDIS menulis total byte yang ditulis NDIS dalam memori di InterfaceBuffer.
Nilai kembali
NdisEnumerateFilterModules mengembalikan salah satu nilai status berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Operasi berhasil diselesaikan. |
|
NdisEnumerateFilterModules gagal karena parameter NdisHandle bukan adaptor miniport NDIS yang valid, pengikatan protokol, atau handel modul filter. |
|
NdisEnumerateFilterModules gagal karena buffer yang disediakan di parameter InterfaceBuffer terlalu singkat bagi NDIS untuk mengembalikan semua informasi. Jika hasil parsial ditulis di InterfaceBuffer, nilai pada parameter BytesWritten berisi panjang hasil parsial. |
Keterangan
Driver miniport NDIS, driver protokol, atau driver filter dapat memanggil fungsi NdisEnumerateFilterModules untuk menghitung semua filter dalam tumpukan filter.
NdisEnumerateFilterModules mengembalikan daftar modul filter dan memfilter driver perantara dari atas ke bagian bawah tumpukan driver. Misalnya, jika modul filter (F1 dan F2) dilampirkan ke adaptor miniport (M1) dan jika F2 di atas F1, NdisEnumerateFilterModules mengembalikan daftar dalam urutan berikut: F2, F1. Jika ada juga driver perantara filter (M2) yang terikat ke M1, jika M2 di atas F2, dan jika filter lain (F3) dilampirkan ke M2, NdisEnumerateFilterModules mengembalikan daftar filter dalam urutan berikut: F3, M2, F2, F1.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
Target Platform | Desktop |
Header | ndis.h (termasuk Ndis.h) |
Pustaka | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | Irql_Filter_Driver_Function(ndis) |