Compartilhar via


Função RtmRegisterEntity (rtmv2.h)

A função RtmRegisterEntity registra um cliente com uma instância do gerenciador de tabelas de roteamento para uma família de endereços específica. O gerenciador de tabelas de roteamento retorna um identificador de registro e um perfil da instância. O perfil contém uma lista de valores usados ao chamar outras funções. Os valores incluem o número máximo de destinos retornados em um buffer por uma única chamada.

O registro é a primeira ação que um cliente deve executar.

Sintaxe

DWORD RtmRegisterEntity(
  [in]  PRTM_ENTITY_INFO           RtmEntityInfo,
  [in]  PRTM_ENTITY_EXPORT_METHODS ExportMethods,
  [in]  RTM_EVENT_CALLBACK         EventCallback,
  [in]  BOOL                       ReserveOpaquePointer,
  [out] PRTM_REGN_PROFILE          RtmRegProfile,
  [out] PRTM_ENTITY_HANDLE         RtmRegHandle
);

Parâmetros

[in] RtmEntityInfo

Ponteiro para uma estrutura RTM_ENTITY_INFO . Essa estrutura contém informações que identificam o cliente para o gerenciador de tabelas de roteamento, como a instância do gerenciador de tabelas de roteamento e a família de endereços com a qual se registrar.

[in] ExportMethods

Ponteiro para uma estrutura RTM_ENTITY_EXPORT_METHODS que contém uma lista de métodos exportados pelo cliente. Esse parâmetro é opcional e pode ser definido como NULL se o cliente de chamada não tiver métodos para exportar.

[in] EventCallback

Uma estrutura RTM_EVENT_CALLBACK que especifica o retorno de chamada que o gerenciador de tabelas de roteamento usa para notificar o cliente de eventos. Os eventos são quando um cliente registra e cancela o registro, quando as rotas expiram e quando ocorrem alterações na melhor rota para um destino. Somente essas alterações especificadas quando o cliente chamado RtmRegisterForChangeNotification.

[in] ReserveOpaquePointer

Especifica se é necessário reservar um ponteiro opaco em cada destino para essa instância do protocolo. Especifique TRUE para reservar um ponteiro opaco em cada destino. Especifique FALSE para ignorar essa ação. Esses ponteiros opacos podem ser usados para apontar para um contexto privado específico do protocolo para cada destino.

[out] RtmRegProfile

Na entrada, RtmRegProfile é um ponteiro para uma estrutura RTM_REGN_PROFILE .

Na saída, RtmRegProfile é preenchido com a estrutura de perfil de registro solicitada. O cliente deve usar as informações retornadas em outras chamadas de função (as informações retornadas incluem o número de próximos saltos de custo igual e o número máximo de itens retornados por uma chamada de função de enumeração).

[out] RtmRegHandle

Recebe um identificador de registro para o cliente. Esse identificador deve ser usado em todas as chamadas subsequentes para o gerenciador de tabelas de roteamento.

Valor retornado

Se a função for bem-sucedida, o valor retornado será NO_ERROR.

Se a função falhar, o valor retornado será um dos seguintes códigos de erro.

Valor Significado
ERROR_ALREADY_EXISTS
O cliente especificado já se registrou no gerenciador de tabelas de roteamento.
ERROR_BAD_CONFIGURATION
As informações do Registro para o gerenciador de tabelas de roteamento estão corrompidas.
ERROR_FILE_NOT_FOUND
As informações do Registro para o gerenciador de tabelas de roteamento não foram encontradas.
ERROR_INVALID_DATA
Um parâmetro contém informações incorretas.
ERROR_INVALID_PARAMETER
Um parâmetro contém informações incorretas.
ERROR_NO_SYSTEM_RESOURCES
Não há recursos do sistema disponíveis suficientes para concluir essa operação.
ERROR_NOT_ENOUGH_MEMORY
Não há memória suficiente para concluir essa operação.

Comentários

Para obter o código de exemplo que usa essa função, consulte Registrar com o Gerenciador de Tabelas de Roteamento.

Requisitos

   
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
Biblioteca Rtm.lib
DLL Rtm.dll

Confira também

RTM_ENTITY_EXPORT_METHODS

RTM_ENTITY_INFO

RTM_EVENT_CALLBACK

RTM_REGN_PROFILE

RtmDeregisterEntity

RtmGetRegisteredEntities

RtmReleaseEntities