Функция SetTcpEntry (iphlpapi.h)
Функция SetTcpEntry задает состояние TCP-подключения.
Синтаксис
IPHLPAPI_DLL_LINKAGE DWORD SetTcpEntry(
[in] PMIB_TCPROW pTcpRow
);
Параметры
[in] pTcpRow
Указатель на структуру MIB_TCPROW . Эта структура указывает сведения для идентификации TCP-подключения, которое необходимо изменить. Он также указывает новое состояние tcp-подключения. Вызывающий объект должен указать значения для всех членов в этой структуре.
Возвращаемое значение
Функция возвращает NO_ERROR (ноль), если функция выполнена успешно.
Если функция завершается сбоем, возвращаемое значение представляет собой один из следующих кодов ошибок.
Возвращаемый код/значение | Описание |
---|---|
|
Отказано в доступе". Эта ошибка возвращается в Windows Vista и Windows Server 2008 при следующих условиях: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не работает в расширенной оболочке в качестве встроенного администратора (администратор запуска от имени). |
|
Входной параметр недопустим, никаких действий не предпринималось. Эта ошибка возвращается, если параметр pTcpRow имеет значение NULL или элемент Row в структуре MIB_TCPROW , на который указывает параметр pTcpRow , не имеет значения MIB_TCP_STATE_DELETE_TCB. |
|
Транспорт IPv4 не настроен на локальном компьютере. |
|
Функция не может задать запись TCP, так как приложение работает без повышенных привилегий. |
|
Используйте FormatMessage , чтобы получить строку сообщения для возвращенной ошибки. |
Комментарии
В настоящее время единственным состоянием, в котором можно установить TCP-подключение, является MIB_TCP_STATE_DELETE_TCB.
В Windows Vista и более поздних версиях функция SetTcpEntry может вызываться только пользователем, вошедшего в систему в качестве члена группы "Администраторы". Если метод SetTcpEntry вызывается пользователем, не включаемым в группу Администраторы, вызов функции завершится ошибкой и возвращается ERROR_ACCESS_DENIED .
Функция SetTcpEntry также может завершиться сбоем из-за контроля учетных записей (UAC) в Windows Vista и более поздних версиях. Если приложение, содержащее эту функцию, выполняется пользователем, вошедшего в систему как участник группы администраторов, отличный от встроенного администратора, этот вызов завершится ошибкой, если приложение не было отмечено в файле манифеста параметром requestedExecutionLevel , для которого задано значение requireAdministrator. Если в приложении отсутствует этот файл манифеста, пользователь, вошедший в группу администраторов, отличный от встроенного администратора, должен выполнять приложение в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени) для успешного выполнения этой функции.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | iphlpapi.h |
Библиотека | Iphlpapi.lib |
DLL | Iphlpapi.dll |
См. также раздел
Справочник по вспомогательным функциям IP