Sdílet prostřednictvím


Explicitní vazbové úchyty

Pro maximální kontrolu nad procesem vazby můžou klientské a serverové aplikace používat explicitní popisovače vazeb. Stejně jako implicitní popisovače umožňují explicitní vazební popisovače klientské aplikaci vybrat server pro provádění hovorů. Kromě toho explicitní obslužné rutiny vazeb umožňují vaší klientské/serverové aplikaci vytvořit ověřenou komunikační relaci RPC. Pomocí explicitních omezení se klient může připojit k více než jednomu serveru a provádět vzdálené procedury na více serverech. Vícevláknové a asynchronní klientské aplikace se mohou dokonce připojit k více serverům a současně spouštět více vzdálených procedur.

Klientská aplikace musí předat explicitní popisovač jako parametr každému vzdálenému procedurálnímu volání. Aby bylo možné postupovat podle standardu OSF, měl by být popisovač zadán jako první parametr pro každou vzdálenou proceduru. Rozšíření RPC od Microsoftu však umožňují zadat popisovač vazby na jiných místech. Další informace naleznete v tématu Microsoft RPC Binding-Handle Extensions.

Pokud chcete vytvořit explicitní popisovač, deklarujte popisovač jako parametr pro vzdálené operace v souboru IDL. Příklad Hello, World, lze předefinovat tak, aby používal explicitní popisovač, jak je znázorněno níže:

/* IDL file for explicit handles */
 
[ 
  uuid(20B309B1-015C-101A-B308-02608C4C9B53),
  version(1.0) 
]
interface hello
{
  void HelloProc([in] handle_t h1,
                 [in, string] char *  pszString); 
}

Explicitní a implicitní popisovače můžete kombinovat v jednom rozhraní. Pokud má funkce v seznamu parametrů explicitní popisovač, použije se tento popisovač. Pokud funkce v rozhraní používající implicitní popisovače nezadá explicitní popisovač, použije se výchozí implicitní popisovač.