Функция GetIfStackTable
Функция GetIfStackTable извлекает таблицу записей строк стека сетевых интерфейсов, которые определяют связь сетевых интерфейсов в стеке интерфейсов.
Синтаксис
NETIOAPI_API GetIfStackTable(
_Out_ PMIB_IFSTACK_TABLE *Table
);
Параметры
- Таблица [out]
Указатель на буфер, который получает таблицу записей строк стека интерфейса в структуре MIB_IFSTACK_TABLE .
Возвращаемое значение
GetIfStackTable возвращает STATUS_SUCCESS, если функция выполнена успешно.
В случае сбоя функции GetIfStackTable возвращает один из следующих кодов ошибок:
Код возврата | Описание |
---|---|
STATUS_INVALID_PARAMETER | В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметре Table передается указатель NULL. |
STATUS_NOT_ENOUGH_MEMORY | Недостаточно ресурсов памяти для завершения операции. |
STATUS_NOT_FOUND | Записи стека интерфейса не найдены. |
Другое | Используйте функцию FormatMessage , чтобы получить строку сообщения для возвращаемой ошибки. |
Комментарии
Функция GetIfStackTable перечисляет физические и логические сетевые интерфейсы в стеке интерфейсов на локальном компьютере и возвращает эти сведения в MIB_IFSTACK_TABLE структуре.
Записи стека интерфейса возвращаются в MIB_IFSTACK_TABLE структуре в буфере, на которую указывает параметр Table . Структура MIB_IFSTACK_TABLE содержит число записей стека интерфейса и массив MIB_IFSTACK_ROW структур для каждой записи стека интерфейса.
Связь между интерфейсами в стеке интерфейсов заключается в том, что интерфейс с индексом в элементе HigherLayerInterfaceIndex структуры MIB_IFSTACK_ROW находится непосредственно над интерфейсом с индексом в элементе LowerLayerInterfaceIndex структуры MIB_IFSTACK_ROW.
Память выделяется функцией GetIfStackTable для структуры MIB_IFSTACK_TABLE и MIB_IFSTACK_ROW записей в этой структуре. Если эти возвращаемые структуры больше не требуются, драйвер должен освободить память, вызвав FreeMibTable.
Обратите внимание, что возвращаемая MIB_IFSTACK_TABLE структура, на которую указывает параметр Table , может содержать заполнение для выравнивания между элементом NumEntries и первой записью массива MIB_IFSTACK_ROW в элементе Table структуры MIB_IFSTACK_TABLE. Между MIB_IFSTACK_ROW записями массива также может присутствовать заполнение для выравнивания. Любой доступ к записи массива MIB_IFSTACK_ROW должен предполагать наличие заполнения.
Требования
Целевая платформа |
Универсальное |
Версия |
Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Заголовок |
Netioapi.h (включая Netioapi.h) |
Библиотека |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |