RPC_BINDING_HANDLE

RPC_BINDING HANDLE 数据类型声明绑定句柄,其中包含 RPC 运行时库用于访问绑定信息的信息。

typedef I_RPC_HANDLE RPC_BINDING_HANDLE;

注解

运行时库使用绑定信息建立允许执行远程过程调用的客户端-服务器关系。 根据创建绑定句柄的上下文,它被视为服务器绑定句柄或客户端绑定句柄。

服务器绑定句柄包含客户端与特定服务器建立关系所需的信息。 任意数量的 RPC API 运行时例程返回可用于进行远程过程调用的服务器绑定句柄。

客户端绑定句柄不能用于进行远程过程调用。 RPC 运行时库创建客户端绑定句柄,以便调用服务器过程 (也称为服务器管理器例程) 作为RPC_BINDING_HANDLE参数。 客户端绑定句柄包含有关调用客户端的信息。

当应用程序提供不正确的绑定句柄类型时, RpcBinding*RpcNsBinding* 函数将返回状态代码RPC_S_WRONG_KIND_OF_BINDING。

应用程序可以在多个执行线程之间共享单个绑定句柄。 RPC 运行时库管理使用单个绑定句柄的并发远程过程调用。 但是,对于修改绑定句柄的操作,应用程序负责绑定句柄的绑定句柄并发控制。 这些操作包括以下例程:

例如,如果应用程序跨两个执行线程共享绑定句柄,并通过调用 RpcBindingReset 重置其中一个线程中的绑定句柄终结点,则结果未定义。 其他线程上的绑定句柄也可能重置,或者操作可能会失败,或者进程可能会崩溃。 常见错误是在调用绑定句柄时释放绑定句柄;这通常会崩溃调用进程。

如果不希望并发,可以通过调用 RpcBindingCopy 设计应用程序来创建绑定句柄的副本。 在这种情况下,对第一个绑定句柄的操作对第二个绑定句柄没有影响。

需要绑定句柄作为参数的例程显示 RPC_BINDING_HANDLE的数据类型。 绑定句柄参数按值传递。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Rpcdce.h (包括 Rpc.h)