Freigeben über


RtmGetMostSpecificDestination-Funktion (rtmv2.h)

Die RtmGetMostSpecificDestination-Funktion durchsucht die Routingtabelle nach einem Ziel mit der exakten Übereinstimmung für eine angegebene Netzwerkadresse und Subnetzmaske. Wenn die genaue Übereinstimmung nicht gefunden wird, wird das beste Präfix abgeglichen. Die Zielinformationen werden zurückgegeben.

Syntax

DWORD RtmGetMostSpecificDestination(
  [in]  RTM_ENTITY_HANDLE RtmRegHandle,
  [in]  PRTM_NET_ADDRESS  DestAddress,
  [in]  ULONG             ProtocolId,
  [in]  RTM_VIEW_SET      TargetViews,
  [out] PRTM_DEST_INFO    DestInfo
);

Parameter

[in] RtmRegHandle

Handle an den Client, der von einem vorherigen Aufruf von RtmRegisterEntity abgerufen wurde.

[in] DestAddress

Zeiger auf die Zielnetzwerkadresse.

[in] ProtocolId

Gibt den Protokollbezeichner an. Die ProtocolID ist nicht Teil der Suchkriterien. Der Routingtabellen-Manager verwendet diesen Bezeichner, um zu bestimmen, welche Routeninformationen zurückgegeben werden sollen. Wenn beispielsweise ein Client den RIP-Protokollbezeichner angibt, wird die beste RIP-Route zurückgegeben, auch wenn eine Nicht-RIP-Route die beste Route zum Ziel ist.

Geben Sie RTM_BEST_PROTOCOL an, um eine Route zurückzugeben, unabhängig davon, welches Protokoll sie besitzt. Geben Sie RTM_THIS_PROTOCOL an, um die beste Route für das Anrufprotokoll zurückzugeben.

[in] TargetViews

Gibt die Ansichten an, aus denen Informationen zurückgegeben werden sollen. Wenn der Client RTM_VIEW_MASK_ANY angibt, werden Zielinformationen aus allen Ansichten zurückgegeben. es werden jedoch keine ansichtsspezifischen Informationen zurückgegeben.

[out] DestInfo

Bei der Eingabe ist DestInfo ein Zeiger auf eine RTM_DEST_INFO-Struktur .

Bei der Ausgabe wird DestInfo mit den angeforderten Zielinformationen gefüllt.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert NO_ERROR.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes.

Wert Bedeutung
ERROR_INVALID_HANDLE
Das Handle war ungültig.
ERROR_NOT_FOUND
Das angegebene Ziel wurde nicht gefunden.
 
 

Hinweise

Die DestInfo-Struktur ist eine Struktur mit variabler Größe. Wenn der Client mehrere Ansichten mit TargetViews angibt, erhöht sich die Größe von DestInfo für jede Ansicht. Verwenden Sie das Makro RTM_SIZE_OF_DEST_INFO , um zu bestimmen, wie viel Arbeitsspeicher für die DestInfo-Struktur zugewiesen werden soll, bevor Sie diese Funktion aufrufen. Verwenden Sie den für TargetViews angegebenen Wert als Parameter, um RTM_SIZE_OF_DEST_INFO.

Beispielcode mit dieser Funktion finden Sie unter Suchen nach Routen mithilfe einer Präfixstruktur.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Nicht unterstützt
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile rtmv2.h
Bibliothek Rtm.lib
DLL Rtm.dll

Weitere Informationen

RTM_DEST_INFO

RTM_NET_ADDRESS

RtmGetExactMatchDestination

RtmGetExactMatchRoute

RtmGetLessSpecificDestination

RtmIsBestRoute