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


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

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

Синтаксис

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API DeleteIpNetEntry2(
  [in] const MIB_IPNET_ROW2 *Row
);

Параметры

[in] Row

Указатель на запись структуры MIB_IPNET_ROW2 для записи соседнего IP-адреса. При успешном возвращении эта запись будет удалена.

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

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

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

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

Комментарии

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

Функция DeleteIpNetEntry2 используется для удаления записи структуры MIB_IPNET_ROW2 .

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

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

При успешном вызове deleteIpNetEntry2 удаляет соседний IP-адрес.

Функцию GetIpNetTable2 можно вызвать для перечисления записей соседних IP-адресов на локальном компьютере.

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

Требования

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

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

CreateIpNetEntry2

FlushIpNetTable2

GetIpNetEntry2

GetIpNetTable2

MIB_IPNET_ROW2

MIB_IPNET_TABLE2

ResolveIpNetEntry2

SetIpNetEntry2