【发布时间】:2010-10-19 07:16:28
【问题描述】:
我的程序使用 Microsoft RPC 进行进程间通信。为了准备接收 RPC 调用,程序运行以下序列:
RpcServerUseProtseqEp(),然后
RpcServerRegisterIf(),然后
RpcServerListen()
程序按上述顺序启动其 RPC 服务器,工作一段时间,然后终止,稍后可能由另一个程序重新启动。每次运行程序时,RpcServerUseProtseqEp() 的参数值集都是相同的。
当序列在重新启动后第一次运行时,它总是成功,但在随后的运行中 RpcServerUseProtseqEp() 返回 RPC_S_DUPLICATE_ENDPOINT(“端点是重复的。”)目前我只是忽略这个特定的错误代码并将其视为成功,那么所有其他原语通常都可以正常工作。
使用 RpcServerUseProtseqEp() 的正确方法是什么?我应该进行任何清理以撤销注册的端点还是继续忽略 RPC_S_DUPLICATE_ENDPOINT 错误代码?
【问题讨论】: