Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция GetIpForwardEntry2 извлекает сведения для записи IP-маршрута на локальном компьютере.
Синтаксис
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpForwardEntry2(
[in, out] PMIB_IPFORWARD_ROW2 Row
);
Параметры
[in, out] Row
Указатель на запись структуры MIB_IPFORWARD_ROW2 для записи IP-маршрута. При успешном возвращении в эту структуру будут добавлены свойства для записи IP-маршрута.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение будет NO_ERROR.
Если функция завершается сбоем, возвращаемое значение представляет собой один из следующих кодов ошибок.
| Код возврата | Описание |
|---|---|
|
В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметре Row передан указатель NULL, не указан элемент DestinationPrefixMIB_IPFORWARD_ROW2, на который указывает параметр Row, элемент NextHopMIB_IPFORWARD_ROW2, на который указывает параметр Row, или оба элемента InterfaceLuid или InterfaceIndexMIB_IPFORWARD_ROW2, на которые указывает Строка. параметр не указан. |
|
Элемент не найден. Эта ошибка возвращается, если сетевой интерфейс, заданный элементом InterfaceLuid или InterfaceIndexструктуры MIB_IPFORWARD_ROW2 , на которую указывает параметр Row , не соответствует префиксу IP-адреса и семейству адресов, указанным в элементе DestinationPrefix в структуре MIB_IPFORWARD_ROW2 . |
|
Запрос не поддерживается. Эта ошибка возвращается, если на локальном компьютере нет стека IPv4 и AF_INET был указан в семействе адресов в элементе DestinationPrefixMIB_IPFORWARD_ROW2 , на который указывает параметр Row . Эта ошибка также возвращается, если на локальном компьютере нет стека IPv6 и AF_INET6 был указан для семейства адресов в элементе DestinationPrefix . |
|
Используйте FormatMessage , чтобы получить строку сообщения для возвращенной ошибки. |
Комментарии
Функция GetIpForwardEntry2 определена в Windows Vista и более поздних версиях.
Функция GetIpForwardEntry2 используется для получения записи MIB_IPFORWARD_ROW2 структуры.
Во входных данных элемент DestinationPrefix в структуре MIB_IPFORWARD_ROW2 , на который указывает параметр Row , должен быть инициализирован допустимым префиксом адреса IPv4 или IPv6 и семейством. Во входных данных элемент NextHop в структуре MIB_IPFORWARD_ROW2 , на который указывает параметр Row , должен быть инициализирован допустимым IPv4- или IPv6-адресом и семейством. Кроме того, необходимо инициализировать по крайней мере один из следующих элементов в структуре MIB_IPFORWARD_ROW2 , указываемой на параметр Row : InterfaceLuid или InterfaceIndex.
Поля используются в указанном выше порядке. Поэтому если указан InterfaceLuid , то этот член используется для определения интерфейса. Если для элемента InterfaceLuid не задано значение (значения этого элемента были равны нулю), то для определения интерфейса используется элемент InterfaceIndex .
При успешном вызове GetIpForwardEntry2 извлекает другие свойства для записи IP-маршрута и заполняет структуру MIB_IPFORWARD_ROW2 , на которую указывает параметр Row .
Смещение метрики маршрута, указанное в элементе Metricструктуры MIB_IPFORWARD_ROW2 , на которую указывает параметр Row , представляет только часть полной метрики маршрута. Полная метрика — это сочетание этой метрики маршрута, добавленной в метрику интерфейса, указанную в элементе Metricструктуры MIB_IPINTERFACE_ROW связанного интерфейса. Приложение может получить метрику интерфейса, вызвав функцию GetIpInterfaceEntry .
Функцию GetIpForwardTable2 можно вызвать для перечисления записей IP-маршрутов на локальном компьютере.
Требования
| Требование | Значение |
|---|---|
| Минимальная версия клиента | Windows Vista [только классические приложения] |
| Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
| Целевая платформа | Windows |
| Header | netioapi.h (включая Iphlpapi.h) |
| Библиотека | Iphlpapi.lib |
| DLL | Iphlpapi.dll |