Compartilhar via


_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.

Valor Significado
RTM_ENTITY_REGISTERED
Um cliente acabou de se registrar no gerenciador de tabelas de roteamento.
RTM_ENTITY_DEREGISTERED
Um cliente acabou de cancelar o registro.
RTM_ROUTE_EXPIRED
Uma rota atingiu o tempo limite.
RTM_CHANGE_NOTIFICATION
Uma notificação de alteração foi feita.

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

Confira também

RTM_EVENT_TYPE

RtmRegisterEntity