需要扩展错误信息
与排查 RPC 问题相关的主要困难是将 RPC 错误代码映射到基础问题。 配置错误或网络问题可能会导致一个或多个工作站收到RPC_S_*错误,但该工作站只能显示错误、将其解释或保存到某个日志文件。 无论使用哪种方法,解决问题的人员都被剥夺了基本信息:
- 发生错误的位置。 它可能发生在本地计算机、本地计算机调用的远程计算机上,或者发生在由另一台远程计算机调用的远程计算机上。
- 导致问题的原始错误代码。 为了符合 OSF 标准,MS RPC 将错误代码映射到 RPC_S_* 代码。 但是,RPC_S_* 代码过于通用,并且几乎没有提供有用的故障排除信息。
- 与问题发生相关的任何上下文信息。 如果出现非 RPC 错误,调试器可以停止进程并检查发生错误的上下文。 RPC 错误通常由远程进程或计算机生成,后者在返回错误后继续处理,并覆盖与错误相关的任何上下文。