Bagikan melalui


Fungsi GetIfTable2Ex (netioapi.h)

Fungsi GetIfTable2Ex mengambil tabel antarmuka MIB-II.

Sintaks

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIfTable2Ex(
  [in]  MIB_IF_TABLE_LEVEL Level,
  [out] PMIB_IF_TABLE2     *Table
);

Parameter

[in] Level

Tingkat informasi antarmuka yang akan diambil. Parameter ini dapat menjadi salah satu nilai dari jenis enumerasi MIB_IF_TABLE_LEVEL yang ditentukan dalam file header Netioapi.h .

Nilai Makna
MibIfTableNormal
Nilai statistik dan status yang dikembalikan dalam anggota struktur MIB_IF_ROW2 dalam struktur MIB_IF_TABLE2 yang ditujukkan oleh parameter Tabel dikembalikan dari bagian atas tumpukan filter saat parameter ini ditentukan.
MibIfTableRaw
Nilai statistik dan status yang dikembalikan dalam anggota struktur MIB_IF_ROW2 dalam struktur MIB_IF_TABLE2 yang ditujukkan oleh parameter Tabel dikembalikan langsung untuk antarmuka yang dikueri.

[out] Table

Penunjuk ke buffer yang menerima tabel antarmuka dalam struktur MIB_IF_TABLE2 .

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan NO_ERROR.

Jika fungsi gagal, nilai yang dikembalikan adalah salah satu kode kesalahan berikut.

Menampilkan kode Deskripsi
ERROR_INVALID_PARAMETER
Parameter yang tidak valid diteruskan ke fungsi. Kesalahan ini dikembalikan jika nilai ilegal diteruskan dalam parameter Level .
ERROR_NOT_ENOUGH_MEMORY
Sumber daya memori tidak cukup tersedia untuk menyelesaikan operasi.
Lainnya
Gunakan FormatMessage untuk mendapatkan string pesan untuk kesalahan yang dikembalikan.

Keterangan

The
Fungsi GetIfTable2Ex menghitung antarmuka logis dan fisik pada sistem lokal dan mengembalikan informasi ini dalam struktur MIB_IF_TABLE2 . GetIfTable2Ex adalah versi fungsi GetIfTable yang disempurnakan yang memungkinkan pemilihan tingkat informasi antarmuka untuk diambil.

Fungsi GetIfTable2 serupa juga dapat digunakan untuk mengambil antarmuka. tetapi tidak memungkinkan menentukan tingkat antarmuka untuk kembali. Memanggil fungsi GetIfTable2Ex dengan parameter Tingkat yang diatur ke MibIfTableNormal mengambil hasil yang sama seperti memanggil fungsi GetIfTable2 .

Antarmuka dikembalikan dalam struktur MIB_IF_TABLE2 dalam buffer yang diacu oleh parameter Tabel . Struktur MIB_IF_TABLE2 berisi jumlah antarmuka dan array struktur MIB_IF_ROW2 untuk setiap antarmuka. Memori dialokasikan oleh fungsi GetIfTable2 untuk struktur MIB_IF_TABLE2 dan entri MIB_IF_ROW2 dalam struktur ini. Ketika struktur yang dikembalikan ini tidak lagi diperlukan, kosongkan memori dengan memanggil FreeMibTable.

Semua antarmuka termasuk antarmuka driver perantara NDIS dan antarmuka driver filter NDIS dikembalikan untuk salah satu nilai yang mungkin untuk parameter Level . Pengaturan untuk parameter Tingkat memengaruhi bagaimana statistik dan anggota status struktur MIB_IF_ROW2 dalam struktur MIB_IF_TABLE2 yang ditujukkan oleh parameter Tabel untuk antarmuka dikembalikan. Misalnya, kartu antarmuka jaringan (NIC) akan memiliki driver miniport NDIS. Driver perantara NDIS dapat diinstal untuk berinteraksi antara driver protokol tingkat atas dan driver miniport NDIS. Driver filter NDIS (LWF) dapat dilampirkan di atas driver perantara NDIS. Asumsikan bahwa NIC melaporkan anggota MediaConnectState dari struktur MIB_IF_ROW2 sebagai MediaConnectStateConnected tetapi driver filter NDIS memodifikasi status dan melaporkan status sebagai MediaConnectStateDisconnected. Ketika informasi antarmuka dikueri dengan parameter Level diatur ke MibIfTableNormal, status di bagian atas tumpukan filter, yaitu MediaConnectStateDisconnected dilaporkan. Ketika antarmuka dikueri dengan parameter Tingkat yang diatur ke MibIfTableRaw, status pada tingkat antarmuka secara langsung, yaitu MediaConnectStateConnected dikembalikan.

Perhatikan bahwa struktur MIB_IF_TABLE2 yang dikembalikan yang ditunjukkan oleh parameter Tabel mungkin berisi padding untuk perataan antara anggota NumEntries dan entri array MIB_IF_ROW2 pertama di anggota Tabel dari struktur MIB_IF_TABLE2 . Padding untuk perataan mungkin juga ada di antara entri array MIB_IF_ROW2 . Akses apa pun ke entri array MIB_IF_ROW2 harus mengasumsikan padding mungkin ada.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header netioapi.h (termasuk Iphlpapi.h)
Pustaka Iphlpapi.lib
DLL Iphlpapi.dll

Lihat juga

FreeMibTable

GetIfTable

GetIfTable2

Referensi Fungsi Pembantu IP

MIB_IF_ROW2

MIB_IF_TABLE2