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

指定搜尋路由時要使用的準則。 使用下列旗標。

常數 意義
RTM_MATCH_FULL
比對路由與所有準則。
RTM_MATCH_INTERFACE
比對位於相同介面上的路由。
RTM_MATCH_NEIGHBOUR
比對具有相同芳鄰的路由。
RTM_MATCH_NEXTHOP
比對具有相同下一個躍點的路由。
RTM_MATCH_NONE
比對任何準則;會傳回目的地的所有路由。
RTM_MATCH_OWNER
比對具有相同擁有者的路由。
RTM_MATCH_PREF
比對具有相同喜好設定的路由。

[in, out] RouteInfo

在輸入時, RouteInfo是RTM_ROUTE_INFO結構的 指標,其中包含指定要尋找之路由的準則。

在輸出時, RouteInfo 會接收符合準則之路由的路由資訊。

[in] InterfaceIndex

如果在 MatchingFlags中指定RTM_MATCH_INTERFACE, InterfaceIndex 會指定路由必須存在 (所在的介面,該路由在該介面上會有下一個躍點) 。

[in] TargetViews

指定要從中傳回信息的檢視。 如果用戶端指定RTM_VIEW_MASK_ANY,則會從所有檢視傳回目的地資訊;不過,不會傳回任何檢視特定資訊。

[out] RouteHandle

如果必須傳回控制碼:在輸入時, RouteHandleNull的指標。

在輸出時, RouteHandle 會收到路由控制碼的指標;否則 ,RouteHandle 會保持不變。

如果不需要傳回控制碼:在輸入時, RouteHandleNull

傳回值

如果函式成功,傳回值會NO_ERROR。

如果函式失敗,傳回值就是下列其中一個錯誤碼。

意義
ERROR_NOT_FOUND
找不到指定的路由。
 
 

備註

如果您在MatchingFlags參數中未指定路由比對準則,請考慮使用RtmGetExactMatchDestination

在 RouteInfo參數中傳遞RTM_ROUTE_INFO結構的下列成員會用來比對路由:

  • 鄰居
  • NextHopsList
  • PrefInfo
  • RouteOwner

需求

   
最低支援的用戶端 都不支援
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 rtmv2.h
程式庫 Rtm.lib
Dll Rtm.dll

另請參閱

RTM_NET_ADDRESS

RTM_ROUTE_INFO

RtmGetExactMatchDestination

RtmGetLessSpecificDestination

RtmGetMostSpecificDestination

RtmIsBestRoute