Funzione RtmAddNextHop (rtmv2.h)
La funzione RtmAddNextHop aggiunge una nuova voce hop successiva o aggiorna una voce di hop successivo esistente all'elenco hop successivo di un client. Se esiste già un hop successivo, gestione tabelle di routing restituisce un handle all'hop successivo. Questo handle può quindi essere usato per specificare un hop successivo a una destinazione durante l'aggiunta o l'aggiornamento di una route.
Sintassi
DWORD RtmAddNextHop(
[in] RTM_ENTITY_HANDLE RtmRegHandle,
[in] PRTM_NEXTHOP_INFO NextHopInfo,
[in, out] PRTM_NEXTHOP_HANDLE NextHopHandle,
[out] PRTM_NEXTHOP_CHANGE_FLAGS ChangeFlags
);
Parametri
[in] RtmRegHandle
Gestire il client ottenuto da una chiamata precedente a RtmRegisterEntity.
[in] NextHopInfo
Puntatore a una struttura contenente informazioni che identificano l'hop successivo da aggiungere o aggiornare. I membri NextHopOwner e State vengono ignorati; questi membri vengono impostati dalla gestione tabelle di routing. Il membro Flags può essere uno dei valori seguenti.
[in, out] NextHopHandle
Se il client ha un handle (client sta aggiornando un hop successivo): in input NextHopHandle è un puntatore all'handle hop successivo. Nell'output , NextHopHandle è invariato.
Se il client non dispone di un handle e un handle deve essere restituito (il client aggiunge o aggiorna un hop successivo): in input NextHopHandle è un puntatore a NULL. Nell'output , NextHopHandle riceve un puntatore all'handle hop successivo. I valori in NextHopInfo vengono usati per identificare l'hop successivo da aggiornare.
Se un handle non deve essere restituito (il client aggiunge o aggiorna un hop successivo): in input , NextHopHandle è NULL. I valori in NextHopInfo vengono usati per identificare l'hop successivo da aggiornare.
[out] ChangeFlags
In input ChangeFlags è un puntatore a un tipo di dati RTM_NEXTHOP_CHANGE_FLAGS .
Nell'output , ChangeFlags riceve un flag che indica se è stato aggiunto o aggiornato un hop successivo. Se ChangeFlags è zero, è stato aggiornato un hop successivo; se ChangeFlags è RTM_NEXTHOP_CHANGE_NEW, è stato aggiunto un hop successivo.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è NO_ERROR.
Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.
Valore | Significato |
---|---|
|
Il client chiamante non possiede questo hop successivo. |
|
Memoria insufficiente per completare questa operazione. |
Commenti
Se NextHopHandle punta a un handle non NULL , l'hop successivo specificato dall'handle viene aggiornato. In caso contrario, viene eseguita una ricerca per l'indirizzo specificato da NextHopInfo. Se viene trovato un hop successivo, viene aggiornato. Se non viene trovata alcuna corrispondenza, viene aggiunto un nuovo hop successivo.
Se viene restituito un handle, rilasciare l'handle quando non è più richiesto chiamando RtmReleaseNextHops.
Requisiti
Client minimo supportato | Nessuno supportato |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | rtmv2.h |
Libreria | Rtm.lib |
DLL | Rtm.dll |