The RpcEpResolveBinding function resolves a partially bound server binding handle into a fully bound server binding handle.
#include <rpc.h>
RPC_STATUS RPC_ENTRY RpcEpResolveBinding(
RPC_BINDING_HANDLE Binding,
RPC_IF_HANDLE IfSpec
);
An application calls the RpcEpResolveBinding routine to resolve a partially bound server binding handle into a fully bound binding handle.
Resolving binding handles requires an interface UUID and an object UUID (which may be nil). The RPC run-time library asks the endpoint-mapping service on the host specified by the Binding argument to look up an endpoint for a compatible server instance. To find the endpoint, the endpoint-mapping service looks in the endpoint-map database for the interface UUID in the IfSpec argument and the object UUID in the Binding argument, if any.
How the resolve-binding operation functions depends on whether the specified binding handle is partially or fully bound. When the client specifies a partially bound handle, the resolve-binding operation has the following possible outcomes:
When the client specifies a fully bound binding handle, the resolve-binding operation returns the specified binding handle and the RPC_S_OK status code. The resolve-binding operation does not contact the endpoint-mapping service.
In neither the partially nor the fully bound binding case does the resolve-binding operation contact a compatible server instance.
Value | Meaning |
---|---|
RPC_S_OK | Success |
RPC_S_INVALID_BINDING | Invalid binding handle |
RPC_S_WRONG_KIND_OF_BINDING | Wrong kind of binding for operation |
Windows NT: Yes
Windows CE: Unsupported.
Header: Declared in rpcdce.h.
Import Library: Link with rpcrt4.lib.
RpcBindingFromStringBinding, RpcBindingReset, RpcEpRegister, RpcEpRegisterNoReplace, RpcNsBindingImportBegin, RpcNsBindingImportDone, RpcNsBindingImportNext