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


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

Функция SetTcpEntry задает состояние TCP-подключения.

Синтаксис

IPHLPAPI_DLL_LINKAGE DWORD SetTcpEntry(
  [in] PMIB_TCPROW pTcpRow
);

Параметры

[in] pTcpRow

Указатель на структуру MIB_TCPROW . Эта структура указывает сведения для идентификации TCP-подключения, которое необходимо изменить. Он также указывает новое состояние tcp-подключения. Вызывающий объект должен указать значения для всех членов в этой структуре.

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

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

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

Возвращаемый код/значение Описание
ERROR_ACCESS_DENIED
Отказано в доступе". Эта ошибка возвращается в Windows Vista и Windows Server 2008 при следующих условиях: у пользователя отсутствуют необходимые права администратора на локальном компьютере или приложение не работает в расширенной оболочке в качестве встроенного администратора (администратор запуска от имени).
ERROR_INVALID_PARAMETER
Входной параметр недопустим, никаких действий не предпринималось. Эта ошибка возвращается, если параметр pTcpRow имеет значение NULL или элемент Row в структуре MIB_TCPROW , на который указывает параметр pTcpRow , не имеет значения MIB_TCP_STATE_DELETE_TCB.
ERROR_NOT_SUPPORTED
Транспорт IPv4 не настроен на локальном компьютере.
317
Функция не может задать запись 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

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

MIB_TCPROW