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


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

Функция SetIfEntry задает административное состояние интерфейса.

Синтаксис

IPHLPAPI_DLL_LINKAGE DWORD SetIfEntry(
  [in] PMIB_IFROW pIfRow
);

Параметры

[in] pIfRow

Указатель на структуру MIB_IFROW . Элемент dwIndex этой структуры указывает интерфейс, для которого необходимо задать административное состояние. Элемент dwAdminStatus указывает новое административное состояние. Элемент dwAdminStatus может иметь одно из следующих значений.

Значение Значение
MIB_IF_ADMIN_STATUS_UP
Интерфейс включен с правами администратора.
MIB_IF_ADMIN_STATUS_DOWN
Интерфейс отключен с правами администратора.

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

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

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

Код возврата Описание
ERROR_ACCESS_DENIED
Отказано в доступе". Эта ошибка возвращается в Windows Vista и более поздних версиях при следующих условиях: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не выполняется в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени).
ERROR_FILE_NOT_FOUND
Системе не удается найти указанный файл. Эта ошибка возвращается в Windows Vista и более поздних версиях, если не удалось найти сетевой интерфейс, заданный членом dwIndexструктуры MIB_IFROW , на которую указывает параметр pIfRow .
ERROR_INVALID_PARAMETER
В функцию передан недопустимый параметр. Эта ошибка возвращается, если указатель NULL передается в параметре pIfRow или член dwIndexMIB_IFROW , на который указывает параметр pIfRow , не указан. Эта ошибка также возвращается в Windows Server 2003 и более ранних версиях, если не удалось найти сетевой интерфейс, указанный членом dwIndexструктуры MIB_IFROW , на которую указывает параметр pIfRow .
ERROR_NOT_SUPPORTED
Запрос не поддерживается. Эта ошибка возвращается в Windows Server 2003 и более ранних версиях, если на локальном компьютере не настроен стек TCP/IP.
Другое
Используйте FormatMessage , чтобы получить строку сообщения для возвращенной ошибки.

Комментарии

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

Элемент dwIndex в структуре MIB_IFROW , на который указывает параметр pIfRow, должен быть инициализирован в индексе интерфейса.

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

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

Функция SetIfEntry также может завершиться сбоем из-за контроля учетных записей (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

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

GetIfEntry

GetIfTable

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

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

MIB_IFROW

MIB_IFTABLE