A distributed application can specify an endpoint in a string that is used as a parameter to the function RpcServerUseProtseqEp or in a string that appears in the IDL file interface header as part of the endpoint interface attribute. Well-known endpoints are not recommended for most applications.
You can use two approaches to implement the well-known endpoint:
All the information needed to establish the binding can be written into a distributed application when you develop it. The client can specify the well-known endpoint directly in a string, call RpcStringBindingCompose to create a string that contains all the binding information, and obtain a handle by supplying this string to the function RpcBindingFromStringBinding. The client and server can be hard-coded to use a well-known endpoint, or written so that the endpoint information comes from the command line, a data file, or the IDL file.
When a server uses a well-known endpoint, the endpoint data is included as part of the name-service database server entry. When the client imports a binding handle from the server entry, the binding handle contains a complete server address that includes the well-known endpoint.