Identificadores totalmente y parcialmente enlazados
Cuando se usan puntos de conexión dinámicos, las bibliotecas en tiempo de ejecución obtienen información del punto de conexión según lo necesiten. Las bibliotecas en tiempo de ejecución hacen la distinción entre un identificador totalmente enlazado (uno que incluye información del punto de conexión) y un identificador enlazado parcialmente (uno que no incluye información del punto de conexión).
La biblioteca en tiempo de ejecución del cliente debe convertir el identificador enlazado parcialmente en un identificador totalmente enlazado antes de que el cliente pueda enlazar al servidor. La biblioteca en tiempo de ejecución del cliente intenta convertir el identificador enlazado parcialmente para la aplicación cliente mediante la obtención de la información del punto de conexión como se muestra:
- Desde la especificación de la interfaz del cliente
- Desde un servicio de asignación de puntos de conexión que se ejecuta en el servidor
Si el cliente intenta usar un identificador enlazado parcialmente cuando la información del punto de conexión no está disponible en la especificación de interfaz y el asignador de puntos de conexión del servidor no tiene información sobre el punto de conexión del servidor, el cliente no tendrá suficiente información para realizar su llamada a procedimiento remoto y se producirá un error en esa llamada. Para evitar esto, debe registrar el punto de conexión en el asignador de puntos de conexión cuando la aplicación distribuida usa identificadores enlazados parcialmente. Para obtener más información sobre el asignador de puntos de conexión, consulte Especificación de puntos de conexión dinámicos.
Cuando se produce un error en una llamada a procedimiento remoto, la aplicación cliente puede llamar a RpcBindingReset para quitar información de punto de conexión obsoleto. Cuando el cliente intenta llamar al procedimiento remoto, la biblioteca en tiempo de ejecución del cliente vuelve a intentar convertir el identificador totalmente enlazado a un identificador enlazado parcialmente. Esto resulta útil cuando el servidor se ha detenido y reiniciado mediante un punto de conexión dinámico diferente.