Función RtmAddNextHop (rtmv2.h)
La función RtmAddNextHop agrega una nueva entrada de próximo salto o actualiza una entrada de próximo salto existente a la lista de próximo salto de un cliente. Si ya existe un próximo salto, el administrador de tablas de enrutamiento devuelve un identificador al próximo salto. A continuación, este identificador se puede usar para especificar un próximo salto a un destino al agregar o actualizar una ruta.
Sintaxis
DWORD RtmAddNextHop(
[in] RTM_ENTITY_HANDLE RtmRegHandle,
[in] PRTM_NEXTHOP_INFO NextHopInfo,
[in, out] PRTM_NEXTHOP_HANDLE NextHopHandle,
[out] PRTM_NEXTHOP_CHANGE_FLAGS ChangeFlags
);
Parámetros
[in] RtmRegHandle
Identificador para el cliente obtenido de una llamada anterior a RtmRegisterEntity.
[in] NextHopInfo
Puntero a una estructura que contiene información que identifica el próximo salto para agregar o actualizar. Se omiten los miembros NextHopOwner y State ; el administrador de tablas de enrutamiento establece estos miembros. El miembro Flags puede ser uno de los valores siguientes.
[in, out] NextHopHandle
Si el cliente tiene un identificador (el cliente está actualizando un próximo salto): en la entrada, NextHopHandle es un puntero al identificador de próximo salto. En la salida, NextHopHandle no cambia.
Si el cliente no tiene un identificador y se debe devolver un identificador (el cliente agrega o actualiza un próximo salto): En la entrada, NextHopHandle es un puntero a NULL. En la salida, NextHopHandle recibe un puntero al identificador del próximo salto. Los valores de NextHopInfo se usan para identificar el próximo salto que se va a actualizar.
Si no es necesario devolver un identificador (el cliente está agregando o actualizando un próximo salto): en la entrada, NextHopHandle es NULL. Los valores de NextHopInfo se usan para identificar el próximo salto que se va a actualizar.
[out] ChangeFlags
En la entrada, ChangeFlags es un puntero a un tipo de datos RTM_NEXTHOP_CHANGE_FLAGS .
En la salida, ChangeFlags recibe una marca que indica si se agregó o actualizó un próximo salto. Si ChangeFlags es cero, se actualizó un próximo salto; Si ChangeFlags está RTM_NEXTHOP_CHANGE_NEW, se agregó un próximo salto.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es NO_ERROR.
Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.
Valor | Significado |
---|---|
|
El cliente que realiza la llamada no posee este próximo salto. |
|
No hay suficiente memoria para completar esta operación. |
Comentarios
Si NextHopHandle apunta a un identificador distinto de NULL , se actualiza el próximo salto especificado por el identificador. De lo contrario, se realiza una búsqueda para la dirección especificada por NextHopInfo. Si se encuentra un próximo salto, se actualiza. Si no se encuentra ninguna coincidencia, se agrega un nuevo próximo salto.
Si se devolvió un identificador, libere el identificador cuando ya no sea necesario llamando a RtmReleaseNextHops.
Requisitos
Cliente mínimo compatible | No se admite ninguno |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | rtmv2.h |
Library | Rtm.lib |
Archivo DLL | Rtm.dll |