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


Функция GetUnicastIpAddressEntry

Функция GetUnicastIpAddressEntry извлекает сведения о существующей записи одноадресного IP-адреса на локальном компьютере.

Синтаксис

NETIOAPI_API GetUnicastIpAddressEntry(
  _Inout_ PMIB_UNICASTIPADDRESS_ROW Row
);

Параметры

  • Строка [вход, выход]
    Указатель на запись структуры MIB_UNICASTIPADDRESS_ROW для записи одноадресного IP-адреса. При успешном возвращении эта структура обновляется свойствами для существующего IP-адреса одноадресной рассылки.

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

GetUnicastIpAddressEntry возвращает STATUS_SUCCESS , если функция выполнена успешно.

В случае сбоя функции GetUnicastIpAddressEntry возвращает один из следующих кодов ошибок:

Код возврата Описание
STATUS_INVALID_PARAMETER

В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметре Row передается указатель NULL, член Addressструктуры MIB_UNICASTIPADDRESS_ROW, на которую указывает параметр Row, не был задан допустимый адрес IPv4 или IPv6 одноадресной рассылки, либо оба элемента InterfaceLuid и InterfaceIndexструктуры MIB_UNICASTIPADDRESS_ROW не были указаны.

STATUS_NOT_FOUND

Не удалось найти указанный интерфейс. Эта ошибка возвращается, если функции не удается найти сетевой интерфейс, заданный элементом InterfaceLuid или InterfaceIndexструктуры MIB_UNICASTIPADDRESS_ROW , на которую указывает параметр Row .

STATUS_NOT_SUPPORTED

Запрос не поддерживается. Эта ошибка возвращается, если на локальном компьютере не расположен стек IPv4 и IPv4-адрес был указан в элементе Addressструктуры MIB_UNICASTIPADDRESS_ROW , на которую указывает параметр Row , или если на локальном компьютере не расположен стек IPv6 и в элементе Address был указан IPv6-адрес.

Другое

Используйте функцию FormatMessage , чтобы получить строку сообщения для возвращаемой ошибки.

Комментарии

Функция GetUnicastIpAddressEntry обычно используется для получения существующей записи структуры MIB_UNICASTIPADDRESS_ROW , которую необходимо изменить. Затем драйвер может изменить элементы в записи MIB_UNICASTIPADDRESS_ROW , которую он хочет изменить, а затем вызвать функцию SetUnicastIpAddressEntry .

При входе драйвер должен инициализировать следующие элементы структуры MIB_UNICASTIPADDRESS_ROW , на которую указывает параметр Row .

  • Адрес
    Задайте допустимый одноадресный адрес IPv4 или IPv6 и семейство.

  • InterfaceLuid или InterfaceIndex
    Эти элементы используются в порядке, указанном ранее. Поэтому если указан InterfaceLuid , этот член используется для определения интерфейса. Если для элемента InterfaceLuid не задано значение (значение этого элемента было равно нулю), далее для определения интерфейса используется элемент InterfaceIndex .

В выходных данных при успешном вызове GetUnicastIpAddressEntry извлекает другие свойства одноадресного IP-адреса и заполняет структуру MIB_UNICASTIPADDRESS_ROW , на которую указывает параметр Row .

Драйвер может вызвать функцию GetUnicastIpAddressTable , чтобы перечислить записи одноадресных IP-адресов на локальном компьютере.

Требования

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

Универсальное

Версия

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

Заголовок

Netioapi.h (включая Netioapi.h)

Библиотека

Netio.lib

IRQL

< DISPATCH_LEVEL

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

CreateUnicastIpAddressEntry

DeleteUnicastIpAddressEntry

GetUnicastIpAddressTable

InitializeUnicastIpAddressEntry

MIB_UNICASTIPADDRESS_ROW

MIB_UNICASTIPADDRESS_TABLE

NotifyUnicastIpAddressChange

SetUnicastIpAddressEntry