Поделиться через


Функция GetInvertedIfStackTable (netioapi.h)

Функция GetInvertedIfStackTable извлекает таблицу инвертированных записей строк стека сетевых интерфейсов, которые указывают связь сетевых интерфейсов в стеке интерфейсов.

Синтаксис

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetInvertedIfStackTable(
  [out] PMIB_INVERTEDIFSTACK_TABLE *Table
);

Параметры

[out] Table

Указатель на буфер, который получает таблицу записей строк инвертированного стека интерфейса в структуре MIB_INVERTEDIFSTACK_TABLE .

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение будет NO_ERROR.

Если функция завершается сбоем, возвращается один из следующих кодов ошибок.

Код возврата Описание
ERROR_INVALID_PARAMETER
В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметре Table передается указатель NULL.
ERROR_NOT_ENOUGH_MEMORY
Для завершения операции недостаточно ресурсов памяти.
ERROR_NOT_FOUND
Записи стека интерфейса не найдены.
Другое
Используйте функцию FormatMessage , чтобы получить строку сообщения для возвращаемой ошибки.

Комментарии

Функция GetInvertedIfStackTable определена в Windows Vista и более поздних версиях.

The
Функция GetInvertedIfStackTable перечисляет физические и логические сетевые интерфейсы в стеке интерфейсов в локальной системе и возвращает эти сведения в инвертируемой форме в структуре MIB_INVERTEDIFSTACK_TABLE.

Записи стека интерфейса возвращаются в MIB_INVERTEDIFSTACK_TABLE структуре в буфере, на который указывает параметр Table . Структура MIB_INVERTEDIFSTACK_TABLE содержит число записей стека интерфейса и массив MIB_INVERTEDIFSTACK_ROW структур для каждой записи стека интерфейса.

Связь между интерфейсами в стеке интерфейсов заключается в том, что интерфейс с индексом в элементе HigherLayerInterfaceIndex структуры MIB_INVERTEDIFSTACK_ROW находится непосредственно над интерфейсом с индексом в элементе LowerLayerInterfaceIndex структуры MIB_INVERTEDIFSTACK_ROW .

Память выделяется функцией GetInvertedIfStackTable для структуры MIB_INVERTEDIFSTACK_TABLE и MIB_INVERTEDIFSTACK_ROW записей в этой структуре. Если возвращаемые структуры больше не требуются, освободите память, вызвав FreeMibTable.

Обратите внимание, что возвращаемая структура MIB_INVERTEDIFSTACK_TABLE , на которую указывает параметр Table, может содержать заполнение для выравнивания между элементом NumEntries и первой записью массива MIB_INVERTEDIFSTACK_ROW в элементе Tableструктуры MIB_INVERTEDIFSTACK_TABLE . Между записями массива MIB_INVERTEDIFSTACK_ROW также может присутствовать заполнение для выравнивания. Любой доступ к записи массива MIB_INVERTEDIFSTACK_ROW должен предполагать, что может существовать заполнение.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header netioapi.h (включая Iphlpapi.h)
Библиотека Iphlpapi.lib
DLL Iphlpapi.dll

См. также раздел

FreeMibTable

GetIfEntry2

GetIfStackTable

GetIfTable2

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