Aracılığıyla paylaş


GetIfTable2Ex işlevi

GetIfTable2Ex işlevi, alınacak arabirim bilgileri düzeyine göre MIB-II arabirim tablosunu alır.

Sözdizimi

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

Parametre

  • Düzeyi [in]
    Alınacak arabirim bilgilerinin düzeyi. Bu parametre, MIB_IF_TABLE_LEVEL sabit listesindeki değerlerden biri olabilir.

  • Tablo [out]
    MIB_IF_TABLE2 bir yapıda arabirimler tablosunu alan bir arabelleğe yönelik işaretçi.

Dönüş değeri

GetIfTable2Ex, işlev başarılı olursa STATUS_SUCCESS döndürür.

İşlev başarısız olursa GetIfTable2Ex aşağıdaki hata kodlarından birini döndürür:

İade kodu Açıklama
STATUS_INVALID_PARAMETER

İşleve geçersiz bir parametre geçirildi. Düzeyi parametresinde geçersiz bir değer geçirildiyse bu hata döndürülür.

STATUS_NOT_ENOUGH_MEMORY

İşlemi tamamlamak için yeterli bellek kaynağı yok.

Diğer

Döndürülen hatanın ileti dizesini almak için FormatMessage işlevini kullanın.

Açıklamalar

GetIfTable2Ex işlevi, yerel bilgisayardaki mantıksal ve fiziksel arabirimleri numaralandırır ve bu bilgileri MIB_IF_TABLE2 bir yapıda döndürür.

Sürücünüz, arabirimleri almak için GetIfTable2benzer bir işlev kullanabilir, ancak GetIfTable2 sürücünüzün döndürülecek arabirim düzeyini belirlemesini sağlamaz. Düzeyi parametresi mibIfTableNormal olarak ayarlanmış GetIfTable2Ex işlevi ne yapılan çağrı, GetIfTable2 işlevini çağırmayla aynı sonuçları alır.

GetIfTable2Ex, Tablo parametresinin işaret olduğu arabellekteki MIB_IF_TABLE2 bir yapıdaki arabirimleri döndürür. MIB_IF_TABLE2 yapısı bir arabirim sayısı ve her arabirim için bir dizi MIB_IF_ROW2 yapısı içerir. GetIfTable2, MIB_IF_TABLE2 yapısı ve bu yapıdaki MIB_IF_ROW2 girişleri için mmory ayırır. Döndürülen bu yapılar artık gerekli olmadığında, sürücünüz FreeMibTableçağırarak belleği boşaltmalıdır.

NDIS ara sürücü arabirimleri ve NDIS filtre sürücüsü arabirimleri de dahil olmak üzere tüm arabirimler, Düzeyi parametresi için olası değerlerden biri için döndürülür. Düzeyi parametresinin ayarı, arabirim için Tablo parametresi tarafından işaret edilen MIB_IF_TABLE2 yapısındaki MIB_IF_ROW2 yapısının istatistiklerinin ve durum üyelerinin nasıl döndürüldüğünü etkiler. Örneğin, bir ağ arabirimi kartının (NIC) NDIS miniport sürücüsü vardır. Üst düzey protokol sürücüleri ile NDIS miniport sürücüleri arasındaki arabirime NDIS ara sürücüsü yüklenebilir. NDIS filtre sürücüsü NDIS ara sürücüsünün üzerine eklenebilir. NIC'nin MIB_IF_ROW2 yapısının MediaConnectState üyesini MediaConnectStateConnectedolarak bildirdiğini, ancak NDIS filtre sürücüsünün durumu değiştirdiğini ve durumu MediaConnectStateDisconnected olarak bildirdiğini varsayalım. Arabirim bilgileri mibIfTableNormal olarak ayarlanmış Düzeyi parametresiyle sorgulandığında, filtre yığınının üst kısmındaki durum (MediaConnectStateDisconnected) bildirilir. Arabirim, mibIfTableRaw olarak ayarlanmış Düzeyi parametresiyle sorgulandığında, doğrudan arabirim düzeyindeki durum (MediaConnectStateConnected) döndürülür.

Tablo parametresinin işaret olduğu döndürülen MIB_IF_TABLE2 yapısının, NumEntries üyesi ile Tablo MIB_IF_TABLE2 yapısının ilk MIB_IF_ROW2 dizi girişi arasında hizalama için doldurma içerebileceğini unutmayın. Hizalama için doldurma, MIB_IF_ROW2 dizi girişleri arasında da bulunabilir. MIB_IF_ROW2 dizi girişine yapılan tüm erişimlerde doldurmanın mevcut olabileceği varsayılmalıdır.

Gereksinim -leri

Hedef platform

Evrensel

Sürüm

Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde kullanılabilir.

Üstbilgi

Netioapi.h (Netioapi.h içerir)

Kütüphane

Netio.lib

IRQL

< DISPATCH_LEVEL

Ayrıca bkz.

FreeMibTable

GetIfTable2

MIB_IF_TABLE_LEVEL

MIB_IF_TABLE2

MIB_IF_ROW2