0

MS RPC 运行时中有一个RpcRaiseException()函数可以指示在服务器端的 RPC 调用或客户端的管道回调中发生的错误。传入的 RPC_STATUSRpcRaiseError()会传播到 RPC 调用的站点。

问题是如何选择 RPC_STATUS 值?

在管道pull()回调中说,我从中读取数据IStream*并将该数据输入管道。现在IStream::Read()返回一个HRESULT指示错误,我需要调用RpcRaiseException()以中断调用。

我传递了什么价值?

4

1 回答 1

0

如果您有一个可能失败的 API,为什么不让 API 返回失败代码作为 API 的返回值?

如果您确实想使用 RpcRaiseException,异常将作为异常传播到客户端,因此异常代码将在客户端的 RpcExcept 处理程序中显示为 RpcExceptionCode。

于 2009-11-26T17:04:13.593 回答