_EVENT_CALLBACK função de retorno de chamada (rtmv2.h)
O retorno de chamada RTM_EVENT_CALLBACK é usado pelo gerenciador de tabelas de roteamento para informar a um cliente que o evento especificado ocorreu.
Sintaxe
_EVENT_CALLBACK EventCallback;
DWORD EventCallback(
RTM_ENTITY_HANDLE RtmRegHandle,
RTM_EVENT_TYPE EventType,
PVOID Context1,
PVOID Context2
)
{...}
Parâmetros
RtmRegHandle
Identificador para o cliente para o qual o gerenciador de tabelas de roteamento está enviando a notificação.
EventType
Especifica o evento sobre o qual o gerenciador de tabelas de roteamento está notificando o cliente. Os valores a seguir são usados.
Context1
Para chamadas RTM_ENTITY_REGISTERED: contém o identificador para a entidade que se registrou.
Para chamadas RTM_ENTITY_DEREGISTERED: contém o identificador para a entidade que não registrou.
Para chamadas RTM_ROUTE_EXPIRED: contém o identificador para a rota que atingiu o tempo limite.
Para RTM_CHANGE_NOTIFICATION chamadas: contém o identificador para a notificação de alteração.
Context2
Para chamadas RTM_ENTITY_REGISTERED: contém um ponteiro para a estrutura RTM_ENTITY_INFO referenciada pelo identificador em Context1. Se o cliente precisar reter essas informações, o cliente deverá copiá-la para uma estrutura alocada.
Para chamadas RTM_ENTITY_DEREGISTERED: contém um ponteiro para a estrutura RTM_ENTITY_INFO referenciada pelo identificador em Context1. Se o cliente precisar reter essas informações, o cliente deverá copiá-la para uma estrutura alocada.
Para chamadas RTM_ROUTE_EXPIRED: contém um ponteiro para a estrutura RTM_ROUTE_INFO referenciada pelo identificador em Context1. Se o cliente precisar reter essas informações, o cliente deverá copiá-la para uma estrutura alocada.
Para chamadas RTM_CHANGE_NOTIFICATION: contém o contexto de notificação que foi fornecido ao cliente por uma chamada anterior para RtmRegisterForChangeNotification.
Retornar valor
Se o gerenciador de tabelas de roteamento emitir um retorno de chamada RTM_ROUTE_EXPIRED e o cliente retornar ao gerenciador de tabelas de roteamento o valor ERROR_NOT_SUPPORTED, o gerenciador de tabelas de roteamento excluirá a rota da tabela de roteamento.
Todos os outros erros retornados pelo cliente são ignorados.
Comentários
Depois que um cliente tiver se registrado para notificação de alteração, o gerenciador de tabela de roteamento usará esse retorno de chamada para manter o cliente informado sobre eventos.
Se um cliente receber uma RTM_EVENT_CALLBACK para os eventos RTM_ENTITY_REGISTERED ou RTM_ENTITY_DEREGISTERED, o cliente não deverá fazer chamadas para RtmRegisterEntity, RtmDeregisterEntity ou RtmGetRegisteredEntities no contexto desse retorno de chamada.
Se um cliente receber uma RTM_EVENT_CALLBACK para o evento RTM_CHANGE_NOTIFICATION, o cliente não deverá chamar RtmRegisterForChangeNotification no contexto desse retorno de chamada.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Nenhum compatível |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | rtmv2.h |