RtmGetExactMatchRoute 関数 (rtmv2.h)
RtmGetExactMatchRoute 関数は、指定されたルートと完全に一致するルートをルーティング テーブルで検索します。 検索するルートは、ネットワーク アドレス、サブネット マスク、およびその他のルート一致条件によって示されます。 完全一致が見つかった場合は、ルート情報が返されます。
構文
DWORD RtmGetExactMatchRoute(
[in] RTM_ENTITY_HANDLE RtmRegHandle,
[in] PRTM_NET_ADDRESS DestAddress,
[in] RTM_MATCH_FLAGS MatchingFlags,
[in, out] PRTM_ROUTE_INFO RouteInfo,
[in] ULONG InterfaceIndex,
[in] RTM_VIEW_SET TargetViews,
[out] PRTM_ROUTE_HANDLE RouteHandle
);
パラメーター
[in] RtmRegHandle
RtmRegisterEntity の以前の呼び出しから取得したクライアントへのハンドル。
[in] DestAddress
宛先ネットワーク アドレスへのポインター。
[in] MatchingFlags
ルートを検索するときに使用する条件を指定します。 次のフラグが使用されます。
[in, out] RouteInfo
入力時、 RouteInfo は、検索するルートを指定する条件を含む RTM_ROUTE_INFO 構造体を指すポインターです。
出力時に、 RouteInfo は条件に一致したルートのルート情報を受け取ります。
[in] InterfaceIndex
MatchingFlags でRTM_MATCH_INTERFACEが指定されている場合、InterfaceIndex はルートが存在する必要があるインターフェイスを指定します (つまり、そのインターフェイスに次ホップが割り当てられます)。
[in] TargetViews
情報を返すビューを指定します。 クライアントがRTM_VIEW_MASK_ANYを指定した場合は、すべてのビューから宛先情報が返されます。ただし、ビュー固有の情報は返されません。
[out] RouteHandle
ハンドルを返す必要がある場合: 入力時、 RouteHandle は NULL へのポインターです。
出力時に、 RouteHandle はルート ハンドルへのポインターを受け取ります。それ以外の場合、 RouteHandle は変更されません。
ハンドルを返す必要がない場合: 入力時、 RouteHandle は NULL です。
戻り値
関数が成功した場合、戻り値はNO_ERROR。
関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。
値 | 説明 |
---|---|
|
指定されたルートが見つかりませんでした。 |
解説
MatchingFlags パラメーターにルート一致条件が指定されていない場合は、RtmGetExactMatchDestination の使用を検討してください。
RouteInfo パラメーターで渡されるRTM_ROUTE_INFO構造体の次のメンバーは、ルートの照合に使用されます。
- 隣人
- NextHopsList
- PrefInfo
- RouteOwner
要件
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | rtmv2.h |
Library | Rtm.lib |
[DLL] | Rtm.dll |