Bagikan melalui


Fungsi GetIfTable2Ex

Fungsi GetIfTable2Ex mengambil tabel antarmuka MIB-II, mengingat tingkat informasi antarmuka untuk diambil.

Sintaks

NETIOAPI_API GetIfTable2Ex(
  _In_  MIB_IF_TABLE_LEVEL Level,
  _Out_ PMIB_IF_TABLE2     *Table
);

Parameter

  • Level [in]
    Tingkat informasi antarmuka yang akan diambil. Parameter ini dapat menjadi salah satu nilai dari enumerasi MIB_IF_TABLE_LEVEL .

  • Tabel [keluar]
    Penunjuk ke buffer yang menerima tabel antarmuka dalam struktur MIB_IF_TABLE2 .

Menampilkan nilai

GetIfTable2Ex mengembalikan STATUS_SUCCESS jika fungsi berhasil.

Jika fungsi gagal, GetIfTable2Ex mengembalikan salah satu kode kesalahan berikut:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER

Parameter yang tidak valid diteruskan ke fungsi. Kesalahan ini dikembalikan jika nilai ilegal diteruskan dalam parameter Level .

STATUS_NOT_ENOUGH_MEMORY

Sumber daya memori tidak cukup tersedia untuk menyelesaikan operasi.

Lainnya

Gunakan fungsi FormatMessage untuk mendapatkan string pesan untuk kesalahan yang dikembalikan.

Keterangan

Fungsi GetIfTable2Ex menghitung antarmuka logis dan fisik di komputer lokal dan mengembalikan informasi ini dalam struktur MIB_IF_TABLE2 .

Driver Anda bisa menggunakan fungsi serupa, GetIfTable2, untuk mengambil antarmuka, tetapi GetIfTable2 tidak memfungsikan driver Anda untuk menentukan tingkat antarmuka yang akan dikembalikan. Panggilan ke fungsi GetIfTable2Ex dengan parameter Tingkat yang diatur ke MibIfTableNormal mengambil hasil yang sama seperti memanggil fungsi GetIfTable2 .

GetIfTable2Ex mengembalikan antarmuka dalam struktur MIB_IF_TABLE2 dalam buffer yang dirujuk parameter Tabel . Struktur MIB_IF_TABLE2 berisi jumlah antarmuka dan array struktur MIB_IF_ROW2 untuk setiap antarmuka. GetIfTable2 mengalokasikan mmory untuk struktur MIB_IF_TABLE2 dan entri MIB_IF_ROW2 dalam struktur ini. Ketika struktur yang dikembalikan ini tidak lagi diperlukan, driver Anda harus membebaskan 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) memiliki driver miniport NDIS. Driver perantara NDIS dapat diinstal untuk berinteraksi antara driver protokol tingkat atas dan driver miniport NDIS. Driver filter NDIS 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 Tingkat diatur ke MibIfTableNormal, status di bagian atas tumpukan filter (MediaConnectStateDisconnected) dilaporkan. Ketika antarmuka dikueri dengan parameter Tingkat yang diatur ke MibIfTableRaw, status pada tingkat antarmuka secara langsung (MediaConnectStateConnected) dikembalikan.

Perhatikan bahwa struktur MIB_IF_TABLE2 yang dikembalikan yang ditunjuk 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

Platform target

Universal

Versi

Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows.

Header

Netioapi.h (termasuk Netioapi.h)

Pustaka

Netio.lib

IRQL

< DISPATCH_LEVEL

Lihat juga

FreeMibTable

GetIfTable2

MIB_IF_TABLE_LEVEL

MIB_IF_TABLE2

MIB_IF_ROW2