Freigeben über


GetIfStackTable-Funktion (netioapi.h)

Die GetIfStackTable-Funktion ruft eine Tabelle mit Zeileneinträgen der Netzwerkschnittstellen ab, die die Beziehung der Netzwerkschnittstellen auf einem Schnittstellenstapel angeben.

Syntax

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIfStackTable(
  [out] PMIB_IFSTACK_TABLE *Table
);

Parameter

[out] Table

Ein Zeiger auf einen Puffer, der die Tabelle der Schnittstellenstapelzeileneinträge in einer MIB_IFSTACK_TABLE-Struktur empfängt.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert NO_ERROR.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes.

Rückgabecode Beschreibung
ERROR_INVALID_PARAMETER
Es wurde ein ungültiger Parameter an die Funktion übergeben. Dieser Fehler wird zurückgegeben, wenn ein NULL-Zeiger im Table-Parameter übergeben wird.
ERROR_NOT_ENOUGH_MEMORY
Für den Vorgang stehen nicht genügend Arbeitsspeicherressourcen zur Verfügung.
ERROR_NOT_FOUND
Es wurden keine Schnittstellenstapeleinträge gefunden.
Andere
Verwenden Sie die FormatMessage-Funktion , um die Nachrichtenzeichenfolge für den zurückgegebenen Fehler abzurufen.

Hinweise

Die GetIfStackTable-Funktion ist unter Windows Vista und höher definiert.

The
Die GetIfStackTable-Funktion listet die physischen und logischen Netzwerkschnittstellen auf einem Schnittstellenstapel auf einem lokalen System auf und gibt diese Informationen in einer MIB_IFSTACK_TABLE-Struktur zurück.

Schnittstellenstapeleinträge werden in einer MIB_IFSTACK_TABLE Struktur im Puffer zurückgegeben, auf den der Table-Parameter verweist. Die MIB_IFSTACK_TABLE-Struktur enthält eine Schnittstellenstapeleintragsanzahl und ein Array von MIB_IFSTACK_ROW Strukturen für jeden Schnittstellenstapeleintrag.

Die Beziehung zwischen den Schnittstellen im Schnittstellenstapel besteht darin, dass die Schnittstelle mit index im Member HigherLayerInterfaceIndex der MIB_IFSTACK_ROW-Struktur direkt über der Schnittstelle mit index im LowerLayerInterfaceIndex-Member der MIB_IFSTACK_ROW-Struktur liegt.

Arbeitsspeicher wird von der GetIfStackTable-Funktion für die MIB_IFSTACK_TABLE-Struktur und die MIB_IFSTACK_ROW Einträge in dieser Struktur zugewiesen. Wenn diese zurückgegebenen Strukturen nicht mehr erforderlich sind, geben Sie den Speicher frei, indem Sie die FreeMibTable aufrufen.

Beachten Sie, dass die zurückgegebene MIB_IFSTACK_TABLE Struktur, auf die vom Table-Parameter verwiesen wird, eine Auffüllung für die Ausrichtung zwischen dem NumEntries-Element und dem ersten MIB_IFSTACK_ROW Arrayeintrag im Table-Element der MIB_IFSTACK_TABLE-Struktur enthalten kann. Zwischen den MIB_IFSTACK_ROW Arrayeinträgen kann auch ein Abstand für die Ausrichtung vorhanden sein. Bei jedem Zugriff auf einen MIB_IFSTACK_ROW Arrayeintrag sollte davon ausgegangen werden, dass Auffüllung vorhanden ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile netioapi.h (include Iphlpapi.h)
Bibliothek Iphlpapi.lib
DLL Iphlpapi.dll

Weitere Informationen

FreeMibTable

GetIfEntry2

GetIfTable2

GetInvertedIfStackTable

GetIpInterfaceEntry

InitializeIpInterfaceEntry

MIB_IFSTACK_ROW

MIB_IFSTACK_TABLE

MIB_IF_ROW2

MIB_IF_TABLE2

MIB_INVERTEDIFSTACK_ROW

MIB_INVERTEDIFSTACK_TABLE

MIB_IPINTERFACE_ROW

NotifyIpInterfaceChange

SetIpInterfaceEntry