次の方法で共有


GetIpPathEntry 関数

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

構文

NETIOAPI_API GetIpPathEntry(
  _Inout_ PMIB_IPPATH_ROW Row
);

パラメーター

  • Row [in, out]
    IP パス エントリの MIB_IPPATH_ROW 構造体エントリへのポインター。 正常に返されると、この構造体は IP パス エントリのプロパティで更新されます。

戻り値

関数が成功した場合、GetIpPathEntry は STATUS_SUCCESS を返します。

関数が失敗した場合、GetIpPathEntry は次のいずれかのエラー コードを返します:

リターン コード 説明
STATUS_INVALID_PARAMETER

その関数に渡された無効なパラメーター。 このエラーは、Row パラメーターに NULL ポインターが渡された場合、Row パラメータが指す MIB_IPPATH_ROW 構造体の Destination メンバーの si_family メンバーが AF_INET または AF_INET6 に設定されていない場合、またはMIB_IPPATH_ROW 構造体の InterfaceLuid メンバーと InterfaceIndex メンバーの両方が指定されていない場合に返されます。 このエラーは、MIB_IPPATH_ROW 構造体の Source メンバーの si_family メンバーが宛先 IP アドレス ファミリと一致せず、送信元 IP アドレスの si_family が AF_UNSPEC として指定されていない場合にも返されます。

STATUS_NOT_FOUND

指定されたインターフェイスが見つかりませんでした。 このエラーは、Row パラメーターが指す MIB_IPPATH_ROW 構造体の InterfaceLuid メンバーまたは InterfaceIndex メンバーで指定されるネットワーク インターフェイスを関数が見つけられない場合に返されます。

STATUS_NOT_SUPPORTED

要求はサポートされていません。 このエラーは、ローカル コンピューター上に IPv4 スタックがなく、Row パラメーターが指す MIB_IPPATH_ROW 構造体の SourceDestination メンバーに IPv4 が指定されていた場合、またはローカル コンピューター上に IPv6 スタックがなく、IPv6 アドレスが SourceDestination メンバーで指定されている場合に返されます。

その他

FormatMessage 関数を使用して、返されたエラーのメッセージ文字列を取得します。

解説

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

入力時に、ドライバーは Row パラメーターが指す MIB_IPPATH_ROW 構造体の次のメンバーを初期化する必要があります。

  • 宛先
    有効な IPv4 または IPv6 アドレスとファミリに設定します。

  • ソース
    Source メンバーで指定されたアドレス ファミリを Destination メンバーで指定された宛先 IP アドレス ファミリ、または AF_UNSPEC に設定します。

  • InterfaceLuid または InterfaceIndex
    これらのメンバーは、前に示した順序で使用されます。 したがって、InterfaceLuid が指定されている場合は、このメンバーを使用してインターフェイスが決定されます。 InterfaceLuid メンバーに値が設定されていない (このメンバーの値がゼロに設定されている) 場合は、次に InterfaceIndex メンバーがインターフェイスを決定するために使用されます。

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

ドライバーは、GetIpPathTable 関数を呼び出して、ローカル コンピューター上の IP パス エントリを列挙できます。

要件

対象プラットフォーム

ユニバーサル

バージョン

Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。

ヘッダー

Netioapi.h (Netioapi.h を含む)

ライブラリ

Netio.lib

IRQL

< DISPATCH_LEVEL

関連項目

FlushIpPathTable

GetIpPathTable

MIB_IPPATH_ROW

MIB_IPPATH_TABLE