Compartir a través de


Función RtmRegisterForChangeNotification (rtmv2.h)

La función RtmRegisterForChangeNotification informa al administrador de tablas de enrutamiento que el cliente debe recibir notificaciones de cambio para los tipos de cambios especificados. El administrador de tablas de enrutamiento devuelve un identificador de notificación de cambio, que el cliente debe usar al solicitar información de cambio después de recibir un mensaje de notificación de cambio.

Sintaxis

DWORD RtmRegisterForChangeNotification(
  [in]  RTM_ENTITY_HANDLE  RtmRegHandle,
  [in]  RTM_VIEW_SET       TargetViews,
  [in]  RTM_NOTIFY_FLAGS   NotifyFlags,
  [in]  PVOID              NotifyContext,
  [out] PRTM_NOTIFY_HANDLE NotifyHandle
);

Parámetros

[in] RtmRegHandle

Identificador para el cliente obtenido de una llamada anterior a RtmRegisterEntity.

[in] TargetViews

Especifica las vistas en las que se va a registrar la notificación de cambios.

[in] NotifyFlags

Especifica las marcas que indican el tipo de cambios para los que el cliente solicita la notificación. Se usan las marcas siguientes. (Las marcas se van a unir mediante un OR lógico).

Constante Significado
RTM_CHANGE_TYPE_ALL
Notificar al cliente cualquier cambio en un destino.
RTM_CHANGE_TYPE_BEST
Notifique al cliente los cambios en la mejor ruta actual o cuando cambie la mejor ruta.
RTM_CHANGE_TYPE_FORWARDING
Notificar al cliente cualquier cambio de ruta que afecte al reenvío, como los cambios de próximo salto.
RTM_NOTIFY_ONLY_MARKED_DESTS
Notifique al cliente los cambios realizados en destinos marcados por el cliente. Si no se especifica esta marca, se envían mensajes de notificación de cambio para todos los destinos.

[in] NotifyContext

Especifica el contexto de notificación que usa el RTM_EVENT_CALLBACK para indicar nuevos cambios. El contexto de notificación es el parámetro Context2 de la devolución de llamada RTM_EVENT_CALLBACK .

[out] NotifyHandle

Recibe un identificador para una notificación de cambio. El identificador debe usarse al llamar a RtmGetChangedDests.

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
ERROR_INVALID_PARAMETER
Un parámetro contiene información incorrecta.
ERROR_NO_SYSTEM_RESOURCES
No hay suficientes recursos del sistema disponibles para completar esta operación. El administrador de tablas de enrutamiento ha superado el número máximo de notificaciones de cambio que se pueden almacenar en caché.
ERROR_NOT_ENOUGH_MEMORY
No hay suficiente memoria para completar esta operación.
ERROR_NOT_SUPPORTED
No se admite una o varias de las vistas especificadas.
 
 

Comentarios

Un cliente llama a RtmMarkDestForChangeNotification cuando se registra para realizar cambios en un destino específico.

El administrador de tablas de enrutamiento usa la devolución de llamada RTM_EVENT_CALLBACK , especificada cuando el cliente llamado RtmRegisterEntity, para notificar al cliente cuándo se han producido cambios; el cliente debe llamar a RtmGetChangedDests para recibir la información de cambio real.

Para obtener código de ejemplo con esta función, consulte Register For Change Notification.

Requisitos

Requisito Value
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

Consulte también

RtmDeregisterFromChangeNotification

RtmGetChangedDests

RtmMarkDestForChangeNotification