GetIpInterfaceTable függvény

A GetIpInterfaceTable függvény lekéri az IP-felület bejegyzéseit egy helyi számítógépen.

Szintaxis

NETIOAPI_API GetIpInterfaceTable(
  _In_  ADDRESS_FAMILY         Family,
  _Out_ PMIB_IPINTERFACE_TABLE *Table
);

Paraméterek

  • Családi [in]
    A lekérendő IP-felületek címcsaládja.

    A címcsalád lehetséges értékei a Winsock2.h fejlécfájlban jelennek meg. Vegye figyelembe, hogy a AF_ címcsalád és PF_ protokollcsalád állandói azonosak (például AF_INET és PF_INET), így bármelyik állandót használhatja.

    A Windows Vista és a Windows operációs rendszerek újabb verzióiban a Family paraméter lehetséges értékei a Ws2def.h fejlécfájlban vannak definiálva. Vegye figyelembe, hogy a Ws2def.h fejlécfájl automatikusan szerepel a Netioapi.h-ban, és soha ne használja közvetlenül a Ws2def.h fájlt.

    A címcsalád esetében jelenleg a következő értékek támogatottak:

    • AF_INET
      Az IPv4-címcsalád.

    • AF_INET6
      Az IPv6-címcsalád.

    • AF_UNSPEC
      A címcsalád nincs meghatározva. Ha ez az érték meg van adva, a GetIpInterfaceTable függvény az IPv4- és IPv6-bejegyzéseket egyaránt tartalmazó IP-felületi táblát adja vissza.

  • tábla [ki]
    Egy olyan pufferre mutató mutató, amely egy MIB_IPINTERFACE_TABLE struktúrában fogadja az IP-felület bejegyzéseinek táblázatát.

Visszaadott érték

GetIpInterfaceTable STATUS_SUCCESS ad vissza, ha a függvény sikeres.

Ha a függvény meghiúsul, GetIpInterfaceTable a következő hibakódok egyikét adja vissza:

Kód visszaadása Leírás
STATUS_INVALID_PARAMETER

Érvénytelen paraméter lett átadva a függvénynek. Ez a hiba akkor jelenik meg, ha NULL mutatót ad át a Tábla paraméterben, vagy a Családi paraméter nincs megadva AF_INET, AF_INET6 vagy AF_UNSPEC.

STATUS_NOT_ENOUGH_MEMORY

A művelet végrehajtásához nincs elegendő memóriaerőforrás.

STATUS_NOT_FOUND

A Családi paraméterben megadott IP-felületi bejegyzések nem találhatók.

STATUS_NOT_SUPPORTED

A függvény nem támogatott. Ez a hiba akkor jelenik meg, ha a Cím paraméterben megadott IP-átvitel nincs konfigurálva a helyi számítógépen. Ez a hiba a Windows azon verzióiban is megjelenik, ahol ez a függvény nem támogatott.

Egyéb

A FormatMessage függvénnyel szerezze be a visszaadott hiba üzenetsztringét.

Megjegyzések

A GetIpInterfaceTable függvény számba adja a helyi számítógép IP-adaptereit, és ezt az információt egy MIB_IPINTERFACE_TABLE struktúrában adja vissza.

GetIpInterfaceTable az IP-felület bejegyzéseit adja vissza egy MIB_IPINTERFACE_TABLE struktúrában abban a pufferben, amelyre a Tábla paraméter mutat. A MIB_IPINTERFACE_TABLE struktúra tartalmazza az IP-adapterek bejegyzéseinek számát és az egyes IP-illesztőbejegyzések MIB_IPINTERFACE_ROW struktúráinak tömbét. Ha ezekre a visszaadott struktúrákra már nincs szükség, az illesztőprogramnak szabadíthatja fel a memóriát a FreeMibTable függvény meghívásával.

Az illesztőprogramnak inicializálnia kell a Családi paramétert AF_INET vagy AF_INET6.

Vegye figyelembe, hogy a visszaadott MIB_IPINTERFACE_TABLE struktúra, amelyre a Tábla paraméter mutat, tartalmazhat párnázást a NumEntries tag és a Tábla MIB_IPINTERFACE_TABLE szerkezet első MIB_IPINTERFACE_ROW tömbbejegyzése közötti igazításhoz. Előfordulhat, hogy a MIB_IPINTERFACE_ROW tömbbejegyzések között is van párnázás az igazításhoz. Egy MIB_IPINTERFACE_ROW tömbbejegyzéshez való hozzáférés feltételezi, hogy létezik párnázás.

Követelmények

Célplatform

Univerzális

Verzió

Elérhető a Windows Vista és a Windows operációs rendszerek újabb verzióiban.

Fejléc

Netioapi.h (netioapi.h)

Könyvtár

Netio.lib

IRQL

< DISPATCH_LEVEL

Lásd még:

FreeMibTable

MIB_IPINTERFACE_ROW

MIB_IPINTERFACE_TABLE

MIB_IPNET_ROW2

MIB_IPNET_TABLE2