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


функция if_nametoindex

Функция if_nametoindex преобразует имя интерфейса ANSI для сетевого интерфейса в локальный индекс для интерфейса.

Синтаксис

NET_IFINDEX NETIOAPI_API_ if_nametoindex(
  _In_ PCSTR InterfaceName
);

Параметры

  • InterfaceName [in]
    Указатель на строку ANSI, завершающую значение NULL, содержащую имя интерфейса.

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

Если функция выполнена успешно, if_nametoindex возвращает индекс локального интерфейса. Если функция завершается ошибкой, if_nametoindex возвращает ноль.

Замечания

Функция if_nametoindex сопоставляет имя интерфейса с соответствующим индексом. Эта функция разработана как часть основных расширений сокетов для IPv6, как описано IETF в RFC 2553.

Функция if_nametoindex реализована для переносимости драйверов в средах Unix, но функции ConvertInterfaceXxx являются предпочтительным способом преобразования идентификаторов сетевых интерфейсов. Функцию if_nametoindex можно заменить вызовом функции ConvertInterfaceNameToLuidA для преобразования имени интерфейса ANSI в объединение NET_LUID, а затем вызовом функции преобразования ConvertInterfaceLuidToIndex для преобразования NET_LUID в индекс локального интерфейса.

Если функция if_nametoindex завершается ошибкой и возвращает ноль, невозможно определить код ошибки.

Требования

Целевая платформа

универсальные

Версия

Доступно в Windows Vista и более поздних версиях операционных систем Windows.

Заголовок

Netioapi.h (include Netioapi.h)

Библиотека

Netio.lib

IRQL

PASSIVE_LEVEL

См. также

ConvertInterfaceLuidToIndex

ConvertInterfaceNameToLuidA

NET_LUID