Fonction RtmAddNextHop (rtmv2.h)
La fonction RtmAddNextHop ajoute une nouvelle entrée de tronçon suivant ou met à jour une entrée de tronçon suivant existante dans la liste de tronçons suivants d’un client. S’il existe déjà un tronçon suivant, le gestionnaire de table de routage retourne un handle au tronçon suivant. Ce handle peut ensuite être utilisé pour spécifier un tronçon suivant vers une destination lors de l’ajout ou de la mise à jour d’un itinéraire.
Syntaxe
DWORD RtmAddNextHop(
[in] RTM_ENTITY_HANDLE RtmRegHandle,
[in] PRTM_NEXTHOP_INFO NextHopInfo,
[in, out] PRTM_NEXTHOP_HANDLE NextHopHandle,
[out] PRTM_NEXTHOP_CHANGE_FLAGS ChangeFlags
);
Paramètres
[in] RtmRegHandle
Gérez le client obtenu à partir d’un appel précédent à RtmRegisterEntity.
[in] NextHopInfo
Pointeur vers une structure qui contient des informations identifiant le tronçon suivant à ajouter ou à mettre à jour. Les membres NextHopOwner et State sont ignorés ; ces membres sont définis par le gestionnaire de table de routage. Le membre Flags peut être l’une des valeurs suivantes.
[in, out] NextHopHandle
Si le client a un handle (le client met à jour un tronçon suivant) : en entrée, NextHopHandle est un pointeur vers le handle de tronçon suivant. Sur la sortie, NextHopHandle est inchangé.
Si le client n’a pas de handle et qu’un handle doit être retourné (le client ajoute ou met à jour un tronçon suivant) : en entrée, NextHopHandle est un pointeur vers NULL. Lors de la sortie, NextHopHandle reçoit un pointeur vers le handle de tronçon suivant. Les valeurs de NextHopInfo sont utilisées pour identifier le tronçon suivant à mettre à jour.
Si un handle n’a pas besoin d’être retourné (le client ajoute ou met à jour un tronçon suivant) : en entrée, NextHopHandle a la valeur NULL. Les valeurs de NextHopInfo sont utilisées pour identifier le tronçon suivant à mettre à jour.
[out] ChangeFlags
En entrée, ChangeFlags est un pointeur vers un type de données RTM_NEXTHOP_CHANGE_FLAGS .
À la sortie, ChangeFlags reçoit un indicateur indiquant si un tronçon suivant a été ajouté ou mis à jour. Si ChangeFlags est égal à zéro, un tronçon suivant a été mis à jour ; si ChangeFlags est RTM_NEXTHOP_CHANGE_NEW, un tronçon suivant a été ajouté.
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 |
---|---|
|
Le client appelant ne possède pas ce tronçon suivant. |
|
La mémoire est insuffisante pour effectuer cette opération. |
Notes
Si NextHopHandle pointe vers un handle non NULL , le tronçon suivant spécifié par le handle est mis à jour. Sinon, une recherche est effectuée pour l’adresse spécifiée par NextHopInfo. Si un tronçon suivant est trouvé, il est mis à jour. Si aucune correspondance n’est trouvée, un nouveau tronçon suivant est ajouté.
Si un handle a été retourné, relâchez le handle lorsqu’il n’est plus nécessaire en appelant RtmReleaseNextHops.
Spécifications
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 |