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


Функция DeleteUnicastIpAddressEntry (netioapi.h)

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

Синтаксис

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API DeleteUnicastIpAddressEntry(
  [in] const MIB_UNICASTIPADDRESS_ROW *Row
);

Параметры

[in] Row

Указатель на запись структуры MIB_UNICASTIPADDRESS_ROW для существующей записи одноадресного IP-адреса, удаляемой с локального компьютера.

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

Если функция выполнена успешно, возвращаемое значение будет NO_ERROR.

Если функция завершается сбоем, возвращается один из следующих кодов ошибок.

Код возврата Описание
ERROR_ACCESS_DENIED
Отказано в доступе". Эта ошибка возвращается при нескольких условиях, которые включают следующее: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не работает в расширенной оболочке в качестве встроенного администратора (администратор запуска от имени администратора).
ERROR_INVALID_PARAMETER
В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметре Row передается указатель NULL, члену AddressMIB_UNICASTIPADDRESS_ROW, на который указывает параметр Row, не задан допустимый одноадресный IPv4-адрес или IPv6-адрес или не указаны оба элемента InterfaceLuid или InterfaceIndexMIB_UNICASTIPADDRESS_ROW, на которые указывает параметр Row.
ERROR_NOT_FOUND
Не удалось найти указанный интерфейс. Эта ошибка возвращается, если не удалось найти сетевой интерфейс, указанный элементом InterfaceLuid или InterfaceIndexMIB_UNICASTIPADDRESS_ROW , на который указывает параметр Row .
ERROR_NOT_SUPPORTED
Запрос не поддерживается. Эта ошибка возвращается, если на локальном компьютере нет стека IPv4 и в элементе AddressMIB_UNICASTIPADDRESS_ROW указан IPv4-адрес, на который указывает параметр Row . Эта ошибка также возвращается, если на локальном компьютере нет стека IPv6 и в элементе Address был указан IPv6-адрес.
Другое
Используйте FormatMessage , чтобы получить строку сообщения для возвращаемой ошибки.

Комментарии

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

Функция DeleteUnicastIpAddressEntry используется для удаления существующей записи структуры MIB_UNICASTIPADDRESS_ROW на локальном компьютере.

На входных данных члену Address в структуре MIB_UNICASTIPADDRESS_ROW , на которую указывает параметр Row , должен быть задан допустимый одноадресный адрес IPv4 или IPv6 и семейство. Кроме того, необходимо инициализировать по крайней мере один из следующих элементов в структуре MIB_UNICASTIPADDRESS_ROW , указываемой на параметр Row : InterfaceLuid или InterfaceIndex.

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

Если функция выполнена успешно, существующий IP-адрес, представленный параметром Row , был удален.

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

Функция DeleteUnicastIpAddressEntry может вызываться только пользователем, вошедшего в систему как член группы Администраторы. Если метод DeleteUnicastIpAddressEntry вызывается пользователем, который не является членом группы "Администраторы", вызов функции завершится ошибкой и возвращается ERROR_ACCESS_DENIED . Эта функция также может завершиться сбоем из-за контроля учетных записей (UAC) в Windows Vista и более поздних версиях. Если приложение, содержащее эту функцию, выполняется пользователем, вошедшего в систему как член группы администраторов, отличный от встроенного администратора, этот вызов завершится ошибкой, если приложение не было отмечено в файле манифеста с параметром requestedExecutionLevel , для которого задано значение requireAdministrator. Если в приложении отсутствует этот файл манифеста, пользователь, вошедший в систему как член группы администраторов, отличный от встроенного администратора, должен выполнить приложение в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени), чтобы эта функция была успешной.

Требования

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

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

CreateUnicastIpAddressEntry

GetUnicastIpAddressEntry

GetUnicastIpAddressTable

Справочник по вспомогательной функции IP

InitializeUnicastIpAddressEntry

MIB_UNICASTIPADDRESS_ROW

MIB_UNICASTIPADDRESS_TABLE

NotifyUnicastIpAddressChange

SetUnicastIpAddressEntry