共用方式為


明確綁定控制柄

若要對系結程式進行最大控制,用戶端/伺服器應用程式可能會使用明確的系結句柄。 如同隱含句柄,明確系結句柄可讓用戶端應用程式選取伺服器來執行其呼叫。 此外,顯式繫結控制可讓用戶端/伺服器應用程式建立已驗證的 RPC 通訊工作階段。 透過明確的句柄,您的用戶端可以連線到多個伺服器,並在多部伺服器上執行遠端程式。 多線程和異步用戶端應用程式甚至可以連線到多部伺服器,同時執行多個遠端程式。

客戶端應用程式必須將顯式句柄作為參數傳遞至每個遠端程序呼叫。 為了符合OSF標準,應該在每個遠端程式上將句柄指定為第一個參數。 不過,微軟的 RPC 擴充功能可讓您在其他位置指定繫結句柄。 如需詳細資訊,請參閱 Microsoft RPC Binding-Handle Extensions

若要建立明確的句柄,請將句柄定義為 IDL 檔案中遠端作業的參數。 Hello,World 範例 可以重新定義為使用明確的控制代碼,如下所示:

/* 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); 
}

您可以在單一介面中結合明確和隱含控制。 如果函式在其參數清單中有明確的句柄,則會使用該句柄。 如果使用隱含句柄的介面中的函式未指定明確的句柄,則會使用預設的隱含句柄。