GetIpForwardEntry2 関数 (netioapi.h)

GetIpForwardEntry2 関数は、ローカル コンピューター上の IP ルート エントリの情報を取得します。

構文

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpForwardEntry2(
  [in, out] PMIB_IPFORWARD_ROW2 Row
);

パラメーター

[in, out] Row

IP ルート エントリの MIB_IPFORWARD_ROW2 構造体エントリへのポインター。 正常に戻ると、この構造体は IP ルート エントリのプロパティで更新されます。

戻り値

関数が成功した場合、戻り値はNO_ERROR。

関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。

リターン コード 説明
ERROR_INVALID_PARAMETER
無効なパラメーターが関数に渡されました。 このエラーは、Null ポインターが Row パラメーターで渡された場合、Row パラメーターが指すMIB_IPFORWARD_ROW2DestinationPrefix メンバーが指定されなかった場合、Row パラメーターが指すMIB_IPFORWARD_ROW2NextHop メンバーが指定されていない場合、または Row パラメーターが指すMIB_IPFORWARD_ROW2の InterfaceLuid メンバーまたは InterfaceIndex メンバーの両方が返されます。パラメーターが指定されていません。
ERROR_NOT_FOUND
Element not found. Row パラメーターが指すMIB_IPFORWARD_ROW2構造体の InterfaceLuid または InterfaceIndex メンバーによって指定されたネットワーク インターフェイスが、MIB_IPFORWARD_ROW2構造体の DestinationPrefix メンバーで指定された IP アドレス プレフィックスとアドレス ファミリと一致しない場合、このエラーが返されます。
ERROR_NOT_SUPPORTED
要求はサポートされていません。 このエラーは、ローカル コンピューター上に IPv4 スタックがなく、Row パラメーターが指すMIB_IPFORWARD_ROW2DestinationPrefix メンバーのアドレス ファミリでAF_INETが指定されている場合に返されます。 このエラーは、ローカル コンピューター上に IPv6 スタックがなく、DestinationPrefix メンバーのアドレス ファミリにAF_INET6が指定されている場合にも返されます。
その他
FormatMessage を使用して、返されたエラーのメッセージ文字列を取得します。

注釈

GetIpForwardEntry2 関数は、Windows Vista 以降で定義されています。

GetIpForwardEntry2 関数は、MIB_IPFORWARD_ROW2構造体エントリを取得するために使用されます。

入力時に、Row パラメーターが指すMIB_IPFORWARD_ROW2構造体の DestinationPrefix メンバーは、有効な IPv4 または IPv6 アドレス プレフィックスとファミリに初期化する必要があります。 入力時に、Row パラメーターが指すMIB_IPFORWARD_ROW2構造体の NextHop メンバーは、有効な IPv4 または IPv6 アドレスとファミリに初期化する必要があります。 さらに、Row パラメーターを指すMIB_IPFORWARD_ROW2構造体の少なくとも 1 つのメンバーを初期化する必要があります。 InterfaceLuid または InterfaceIndex

フィールドは、上記の順序で使用されます。 したがって、 InterfaceLuid が指定されている場合は、このメンバーを使用してインターフェイスが決定されます。 InterfaceLuid メンバーに値が設定されていない場合 (このメンバーの値が 0 に設定されました)、InterfaceIndex メンバーが次に使用されてインターフェイスが決定されます。

呼び出しが成功すると、GetIpForwardEntry2 は IP ルート エントリの他のプロパティを取得し、Row パラメーターが指すMIB_IPFORWARD_ROW2構造を入力します。

Row パラメーターによって指されるMIB_IPFORWARD_ROW2構造の Metric メンバーで指定されたルート メトリック オフセットは、完全なルート メトリックの一部のみを表します。 完全なメトリックは、関連付けられたインターフェイスのMIB_IPINTERFACE_ROW構造の Metric メンバーで指定されたインターフェイス メトリックに追加された、このルート メトリックの組み合わせです。 アプリケーションは、 GetIpInterfaceEntry 関数を呼び出すことによってインターフェイス メトリックを取得できます。

GetIpForwardTable2 関数を呼び出して、ローカル コンピューター上の IP ルート エントリを列挙できます。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー netioapi.h (Iphlpapi.h を含む)
Library Iphlpapi.lib
[DLL] Iphlpapi.dll

こちらもご覧ください

CreateIpForwardEntry2

DeleteIpForwardEntry2

GetBestRoute2

GetIpForwardTable2

GetIpInterfaceEntry

InitializeIpForwardEntry

MIB_IPFORWARD_ROW2

MIB_IPFORWARD_TABLE2

MIB_IPINTERFACE_ROW

NotifyRouteChange2

SetIpForwardEntry2