Функция CreateIpNetEntry (iphlpapi.h)

Функция CreateIpNetEntry создает запись протокола ARP в таблице ARP на локальном компьютере.

Синтаксис

IPHLPAPI_DLL_LINKAGE DWORD CreateIpNetEntry(
  [in] PMIB_IPNETROW pArpEntry
);

Параметры

[in] pArpEntry

Указатель на структуру MIB_IPNETROW , указывающую сведения для новой записи. Вызывающий объект должен указать значения для всех членов этой структуры.

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

Функция возвращает NO_ERROR (ноль), если функция выполнена успешно.

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

Код возврата Описание
ERROR_ACCESS_DENIED
Отказано в доступе". Эта ошибка возвращается в Windows Vista и Windows Server 2008 при нескольких условиях, которые включают следующее: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не работает в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени администратора).
ERROR_INVALID_PARAMETER
Входной параметр недопустим, никаких действий не было выполнено. Эта ошибка возвращается, если параметр pArpEntry имеет значение NULL, член dwPhysAddrLenMIB_IPNETROW имеет значение 0 или значение больше 8, >член dwAddr структуры MIB_IPNETROW является недопустимым или один из других элементов структуры MIB_IPNETROW является недопустимым.
ERROR_NOT_SUPPORTED
Транспорт IPv4 не настроен на локальном компьютере.
Другое
Используйте FormatMessage , чтобы получить строку сообщения для возвращаемой ошибки.

Комментарии

Чтобы изменить существующую запись ARP, используйте функцию SetIpNetEntry . Чтобы получить таблицу ARP, вызовите функцию GetIpNetTable . Чтобы удалить существующую запись ARP, вызовите DeleteIpNetEntry.

В Windows Vista и более поздних версиях функцию CreateIpNetEntry может вызывать только пользователь, вошедший в систему как член группы "Администраторы". Если метод CreateIpNetEntry вызывается пользователем, не включаемым в группу Администраторы, вызов функции завершится ошибкой и возвращается ERROR_ACCESS_DENIED .

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

Примечание В Windows NT 4.0 и Windows 2000 и более поздних версий эта функция выполняет привилегированную операцию. Для успешного выполнения этой функции вызывающий объект должен войти в систему как член группы Администраторы или NetworkConfigurationOperators.
 

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header iphlpapi.h
Библиотека Iphlpapi.lib
DLL Iphlpapi.dll

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

CreateProxyArpEntry

DeleteIpNetEntry

DeleteProxyArpEntry

FlushIpNetTable

GetIpNetTable

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

Начальная страница вспомогательного ip-адреса

MIB_IPNETROW

SetIpNetEntry