Condividi tramite


Funzione RtmRegisterEntity (rtmv2.h)

La funzione RtmRegisterEntity registra un client con un'istanza della gestione tabelle di routing per una famiglia di indirizzi specifica. Gestione tabelle di routing restituisce un handle di registrazione e un profilo dell'istanza. Il profilo contiene un elenco di valori usati quando si chiamano altre funzioni. I valori includono il numero massimo di destinazioni restituite in un buffer da una singola chiamata.

La registrazione è la prima azione che deve essere eseguita da un client.

Sintassi

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
);

Parametri

[in] RtmEntityInfo

Puntatore a una struttura RTM_ENTITY_INFO . Questa struttura contiene informazioni che identificano il client nella gestione tabelle di routing, ad esempio l'istanza di gestione tabelle di routing e la famiglia di indirizzi con cui registrare.

[in] ExportMethods

Puntatore a una struttura RTM_ENTITY_EXPORT_METHODS che contiene un elenco di metodi esportati dal client. Questo parametro è facoltativo e può essere impostato su NULL se il client chiamante non ha metodi da esportare.

[in] EventCallback

Struttura RTM_EVENT_CALLBACK che specifica il callback usato da Gestione tabelle di routing per notificare al client eventi. Gli eventi sono quando un client registra e annulla la registrazione, quando le route scadono e quando si verificano modifiche alla route migliore a una destinazione. Solo quelle modifiche specificate quando il client denominato RtmRegisterForChangeNotification.

[in] ReserveOpaquePointer

Specifica se riservare un puntatore opaco in ogni destinazione per questa istanza del protocollo. Specificare TRUE per riservare un puntatore opaco in ogni destinazione. Specificare FALSE per ignorare questa azione. Questi puntatori opachi possono essere usati per puntare a un contesto privato e specifico del protocollo per ogni destinazione.

[out] RtmRegProfile

In input , RtmRegProfile è un puntatore a una struttura RTM_REGN_PROFILE .

Nell'output , RtmRegProfile viene riempito con la struttura del profilo di registrazione richiesta. Il client deve usare le informazioni restituite in altre chiamate di funzione (le informazioni restituite includono il numero di hop successivi a costi uguali e il numero massimo di elementi restituiti da una chiamata di funzione di enumerazione).

[out] RtmRegHandle

Riceve un handle di registrazione per il client. Questo handle deve essere usato in tutte le chiamate successive alla gestione tabelle di routing.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è NO_ERROR.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.

Valore Significato
ERROR_ALREADY_EXISTS
Il client specificato è già stato registrato con gestione tabelle di routing.
ERROR_BAD_CONFIGURATION
Le informazioni del Registro di sistema per gestione tabelle di routing sono danneggiate.
ERROR_FILE_NOT_FOUND
Le informazioni del Registro di sistema per gestione tabelle di routing non sono state trovate.
ERROR_INVALID_DATA
Un parametro contiene informazioni non corrette.
ERROR_INVALID_PARAMETER
Un parametro contiene informazioni non corrette.
ERROR_NO_SYSTEM_RESOURCES
Per completare questa operazione non sono disponibili risorse di sistema sufficienti.
ERROR_NOT_ENOUGH_MEMORY
Memoria insufficiente per completare questa operazione.

Commenti

Per il codice di esempio che usa questa funzione, vedere Registrare con Gestione tabelle di routing.

Requisiti

   
Client minimo supportato Nessuno supportato
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione rtmv2.h
Libreria Rtm.lib
DLL Rtm.dll

Vedi anche

RTM_ENTITY_EXPORT_METHODS

RTM_ENTITY_INFO

RTM_EVENT_CALLBACK

RTM_REGN_PROFILE

RtmDeregisterEntity

RtmGetRegisteredEntities

RtmReleaseEntities