Share via


Función RpcBindingServerFromClient (rpcdce.h)

Una aplicación llama a RpcBindingServerFromClient para convertir un identificador de enlace de cliente en un identificador de enlace de servidor enlazado parcialmente.

Sintaxis

RPC_STATUS RpcBindingServerFromClient(
  RPC_BINDING_HANDLE ClientBinding,
  RPC_BINDING_HANDLE *ServerBinding
);

Parámetros

ClientBinding

Identificador de enlace de cliente para convertir en un identificador de enlace de servidor. Si se especifica un valor de cero, el servidor suplanta al cliente que sirve este subproceso de servidor.

Nota Este parámetro no puede ser NULL en Windows NT 4.0.
 

ServerBinding

Devuelve un identificador de enlace de servidor.

Valor devuelto

Valor Significado
RPC_S_OK
La llamada se realizó correctamente.
RPC_S_INVALID_BINDING
El identificador de enlace no era válido.
RPC_S_WRONG_KIND_OF_BINDING
Este era el tipo incorrecto de enlace para la operación.
RPC_S_CANNOT_SUPPORT
No se puede determinar el host del cliente. Consulte Comentarios para obtener una lista de secuencias de protocolo admitidas.
 
Nota Para obtener una lista de códigos de error válidos, vea Rpc Return Values.
 

Comentarios

Las secuencias de protocolo siguientes admiten RpcBindingServerFromClient:

Una aplicación obtiene un identificador de enlace de cliente del tiempo de ejecución de RPC. Cuando la llamada a procedimiento remoto llega a un servidor, el tiempo de ejecución crea un identificador de enlace de cliente que contiene información sobre el cliente que realiza la llamada. El tiempo de ejecución pasa este identificador a la función del administrador del servidor como primer argumento.

Al llamar a RpcBindingServerFromClient , este identificador de cliente se convierte en un identificador de servidor que tiene estas propiedades:

  • El identificador del servidor es un identificador enlazado parcialmente. Contiene una dirección de red para el cliente que realiza la llamada, pero carece de un punto de conexión.
  • El identificador de servidor contiene el mismo UUID de objeto utilizado por el cliente que realiza la llamada. Puede ser el UUID nulo. Para obtener más información sobre cómo un cliente especifica un UUID de objeto para una llamada, vea RpcBindingsetObject, RpcNsBindingImportBegin, RpcNsBindingLookupBegin y RpcBindingFromStringBinding.
  • El identificador del servidor no contiene información de autenticación.
La aplicación de servidor debe llamar a RpcBindingFree para liberar los recursos utilizados por el identificador de enlace de servidor una vez que ya no sea necesario.
Nota Para consultar la dirección de un cliente, una aplicación comienza llamando a la función RpcBindingServerFromClient para obtener un identificador de enlace de servidor enlazado parcialmente. El identificador de enlace de servidor se puede usar para obtener un enlace de cadena invocando RpcBindingToStringBinding. A continuación, el servidor puede llamar a RpcStringBindingParse para extraer la dirección de red del cliente del enlace de cadena.
 

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado rpcdce.h (include Rpc.h)
Library Rpcrt4.lib
Archivo DLL Rpcrt4.dll

Consulte también

RpcBindingFree

RpcBindingFromStringBinding

RpcBindingSetObject

RpcEpRegister

RpcEpRegisterNoReplace

RpcNsBindingImportBegin

RpcNsBindingLookupBegin