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


функция if_indextoname (netioapi.h)

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

Синтаксис

IPHLPAPI_DLL_LINKAGE PCHAR NETIOAPI_API_ if_indextoname(
  [in]  NET_IFINDEX InterfaceIndex,
  [out] PCHAR       InterfaceName
);

Параметры

[in] InterfaceIndex

Локальный индекс для сетевого интерфейса.

[out] InterfaceName

Указатель на буфер для хранения строки ANSI, завершаемой NULL, содержащей имя интерфейса при успешном возвращении функции. Длина буфера( в байтах), на который указывает этот параметр, должна быть равна или больше IF_NAMESIZE.

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

При успешном выполнении if_indextoname возвращает указатель на строку ANSI с завершением NULL, содержащую имя интерфейса. При сбое возвращается указатель NULL .

Комментарии

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

Функция if_indextoname сопоставляет индекс интерфейса с соответствующим именем. Эта функция разработана как часть базовых расширений сокетов для IPv6, как описано в IETF в RFC 2553. Для получения дополнительной информации см. http://www.ietf.org/rfc/rfc2553.txt.

Функция if_indextoname реализована для переносимости приложений со средами Unix, но предпочтительнее использовать функции ConvertInterface. Функция if_indextoname может быть заменена вызовом функции ConvertInterfaceIndexToLuid для преобразования индекса интерфейса в NET_LUID последующего вызова ConvertInterfaceLuidToNameA для преобразования NET_LUID в имя интерфейса ANSI.

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

Длина (в байтах) буфера, на который указывает параметр InterfaceName , должна быть равна или больше IF_NAMESIZE значение, объявленное в файле заголовка Netioapi.h , равное NDIS_IF_MAX_STRING_SIZE. Максимальная длина имени интерфейса, NDIS_IF_MAX_STRING_SIZE без завершающего значения NULL , объявляется в файле заголовка Ntddndis.h . NDIS_IF_MAX_STRING_SIZE определяется как константой IF_MAX_STRING_SIZE, определенной в файле заголовка Ifdef.h. Файлы заголовков Ntddndis.h и Ifdef.h автоматически включаются в файл заголовка Netioapi.h , который автоматически включается в файл заголовка Iphlpapi.h . Файлы заголовков Ntddndis.h, Ifdef.h и Netioapi.h никогда не следует использовать напрямую.

Требования

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

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

ConvertInterfaceAliasToLuid

ConvertInterfaceGuidToLuid

ConvertInterfaceIndexToLuid

ConvertInterfaceLuidToAlias

ConvertInterfaceLuidToGuid

ConvertInterfaceLuidToIndex

ConvertInterfaceLuidToNameA

ConvertInterfaceLuidToNameW

ConvertInterfaceNameToLuidA

ConvertInterfaceNameToLuidW

NET_LUID

if_nametoindex