Функция SetIfEntry (iphlpapi.h)
Функция SetIfEntry задает административное состояние интерфейса.
Синтаксис
IPHLPAPI_DLL_LINKAGE DWORD SetIfEntry(
[in] PMIB_IFROW pIfRow
);
Параметры
[in] pIfRow
Указатель на структуру MIB_IFROW . Элемент dwIndex этой структуры указывает интерфейс, для которого необходимо задать административное состояние. Элемент dwAdminStatus указывает новое административное состояние. Элемент dwAdminStatus может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Интерфейс включен с правами администратора. |
|
Интерфейс отключен с правами администратора. |
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение будет NO_ERROR.
Если функция завершается сбоем, возвращаемое значение представляет собой один из следующих кодов ошибок.
Код возврата | Описание |
---|---|
|
Отказано в доступе". Эта ошибка возвращается в Windows Vista и более поздних версиях при следующих условиях: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не выполняется в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени). |
|
Системе не удается найти указанный файл. Эта ошибка возвращается в Windows Vista и более поздних версиях, если не удалось найти сетевой интерфейс, заданный членом dwIndexструктуры MIB_IFROW , на которую указывает параметр pIfRow . |
|
В функцию передан недопустимый параметр. Эта ошибка возвращается, если указатель NULL передается в параметре pIfRow или член dwIndexMIB_IFROW , на который указывает параметр pIfRow , не указан. Эта ошибка также возвращается в Windows Server 2003 и более ранних версиях, если не удалось найти сетевой интерфейс, указанный членом dwIndexструктуры MIB_IFROW , на которую указывает параметр pIfRow . |
|
Запрос не поддерживается. Эта ошибка возвращается в 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 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | iphlpapi.h |
Библиотека | Iphlpapi.lib |
DLL | Iphlpapi.dll |
См. также раздел
GetIfTable
Справочник по вспомогательным функциям IP