_EVENT_CALLBACK función de devolución de llamada (rtmv2.h)
El administrador de tablas de enrutamiento usa la RTM_EVENT_CALLBACK devolución de llamada para informar a un cliente de que se produjo el evento especificado.
Sintaxis
_EVENT_CALLBACK EventCallback;
DWORD EventCallback(
RTM_ENTITY_HANDLE RtmRegHandle,
RTM_EVENT_TYPE EventType,
PVOID Context1,
PVOID Context2
)
{...}
Parámetros
RtmRegHandle
Identificador del cliente al que el administrador de tablas de enrutamiento envía la notificación.
EventType
Especifica el evento sobre el que el administrador de tablas de enrutamiento notifica al cliente. Se usan los valores siguientes.
Context1
Para RTM_ENTITY_REGISTERED llamadas: contiene el identificador de la entidad que registró.
Para RTM_ENTITY_DEREGISTERED llamadas: contiene el identificador de la entidad que no se ha registrado.
Para RTM_ROUTE_EXPIRED llamadas: contiene el identificador de la ruta que agota el tiempo de espera.
Para RTM_CHANGE_NOTIFICATION llamadas: contiene el identificador de la notificación de cambios.
Context2
Para RTM_ENTITY_REGISTERED llamadas: contiene un puntero a la estructura RTM_ENTITY_INFO a la que hace referencia el identificador en Context1. Si el cliente debe conservar esta información, el cliente debe copiarla en una estructura que haya asignado.
Para RTM_ENTITY_DEREGISTERED llamadas: contiene un puntero a la estructura RTM_ENTITY_INFO a la que hace referencia el identificador en Context1. Si el cliente debe conservar esta información, el cliente debe copiarla en una estructura que haya asignado.
Para RTM_ROUTE_EXPIRED llamadas: contiene un puntero a la estructura RTM_ROUTE_INFO a la que hace referencia el identificador en Context1. Si el cliente debe conservar esta información, el cliente debe copiarla en una estructura que haya asignado.
Para RTM_CHANGE_NOTIFICATION llamadas: contiene el contexto de notificación que se ha proporcionado al cliente mediante una llamada anterior a RtmRegisterForChangeNotification.
Valor devuelto
Si el administrador de tablas de enrutamiento emite una devolución de llamada de RTM_ROUTE_EXPIRED y el cliente vuelve al administrador de tablas de enrutamiento, el valor ERROR_NOT_SUPPORTED, el administrador de tablas de enrutamiento eliminará la ruta de la tabla de enrutamiento.
Todos los demás errores devueltos por el cliente se omiten.
Comentarios
Una vez que un cliente se ha registrado para la notificación de cambios, el administrador de tablas de enrutamiento usa esta devolución de llamada para mantener al cliente informado sobre los eventos.
Si un cliente recibe un RTM_EVENT_CALLBACK para los eventos de RTM_ENTITY_REGISTERED o RTM_ENTITY_DEREGISTERED, el cliente no debe realizar llamadas a RtmRegisterEntity, RtmDeregisterEntity o RtmGetRegisteredEntities en el contexto de esta devolución de llamada.
Si un cliente recibe un RTM_EVENT_CALLBACK para el evento RTM_CHANGE_NOTIFICATION, el cliente no debe llamar a RtmRegisterForChangeNotification en el contexto de esta devolución de llamada.
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 |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de