функция 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 |