Partager via


Fonction RtmGetMostSpecificDestination (rtmv2.h)

La fonction RtmGetMostSpecificDestination recherche dans la table de routage une destination avec la correspondance exacte d’une adresse réseau et d’un masque de sous-réseau spécifiés . si la correspondance exacte n’est pas trouvée, le préfixe le plus adapté est mis en correspondance. Les informations de destination sont retournées.

Syntaxe

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
);

Paramètres

[in] RtmRegHandle

Gérez le client obtenu à partir d’un appel précédent à RtmRegisterEntity.

[in] DestAddress

Pointeur vers l’adresse réseau de destination.

[in] ProtocolId

Spécifie l’identificateur de protocole. L’ID de protocole ne fait pas partie des critères de recherche. Le gestionnaire de table de routage utilise cet identificateur pour déterminer les informations d’itinéraire à retourner. Par exemple, si un client spécifie l’identificateur de protocole RIP, la meilleure route RIP est retournée, même si une route non RIP est la meilleure route vers la destination.

Spécifiez RTM_BEST_PROTOCOL pour retourner une route, quel que soit le protocole qui en est propriétaire. Spécifiez RTM_THIS_PROTOCOL pour retourner le meilleur itinéraire pour le protocole d’appel.

[in] TargetViews

Spécifie les vues à partir desquelles retourner des informations. Si le client spécifie RTM_VIEW_MASK_ANY, les informations de destination sont retournées à partir de toutes les vues ; toutefois, aucune information spécifique à l’affichage n’est retournée.

[out] DestInfo

En entrée, DestInfo est un pointeur vers une structure RTM_DEST_INFO .

À la sortie, DestInfo est rempli avec les informations de destination demandées.

Valeur retournée

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants.

Valeur Signification
ERROR_INVALID_HANDLE
Le handle n’est pas valide.
ERROR_NOT_FOUND
La destination spécifiée est introuvable.
 
 

Remarques

La structure DestInfo est une structure de taille variable. Si le client spécifie plusieurs vues avec TargetViews, la taille de DestInfo augmente pour chaque vue. Utilisez la macro RTM_SIZE_OF_DEST_INFO pour déterminer la quantité de mémoire à allouer pour la structure DestInfo avant d’appeler cette fonction. Utilisez la valeur spécifiée pour TargetViews comme paramètre pour RTM_SIZE_OF_DEST_INFO.

Pour obtenir un exemple de code utilisant cette fonction, consultez Rechercher des itinéraires à l’aide d’une arborescence de préfixes.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête rtmv2.h
Bibliothèque Rtm.lib
DLL Rtm.dll

Voir aussi

RTM_DEST_INFO

RTM_NET_ADDRESS

RtmGetExactMatchDestination

RtmGetExactMatchRoute

RtmGetLessSpecificDestination

RtmIsBestRoute