rpcAsyncAbortCall 函数 (rpcasync.h)

服务器调用 RpcAsyncAbortCall 以中止异步调用。

语法

RPC_STATUS RpcAsyncAbortCall(
  PRPC_ASYNC_STATE pAsync,
  unsigned long    ExceptionCode
);

parameters

pAsync

指向包含异步调用信息的 RPC_ASYNC_STATE 结构的指针。

ExceptionCode

非零应用程序特定的异常代码。 可以是应用程序定义的错误代码,也可以是标准 RPC 错误代码。 有关详细信息,请参阅 RPC 返回值

返回值

含义
RPC_S_OK
调用取消成功。
RPC_S_INVALID_ASYNC_HANDLE
异步句柄无效。
 
注意 有关有效错误代码的列表,请参阅 RPC 返回值
 

注解

当环境要求服务器在完成之前中止异步调用时,服务器会调用 RpcAsyncAbortCall 。 例如,调用方可能没有发出请求所需的权限,或者服务器可能太忙而无法处理调用。 使用 ExceptionCode 参数指定中止的原因。 运行时环境将异常代码作为错误传播到客户端。

使用 RpcAsyncAbortCall 中止异步调用时,不执行输出参数的封送处理,并且所有输入参数都由 RPC 释放。 调用 RpcAsyncAbortCall 时,不需要调用 RpcAsyncCompleteCall 函数。 对于任何异步调用,只应调用 RpcAsyncAbortCall 函数一次;第二次调用可能会使进程崩溃,或者以其他意外方式失败。

要求

   
最低受支持的客户端 Windows 2000 专业版 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 Windows
标头 rpcasync.h (包括 Rpc.h)
Library Rpcrt4.lib
DLL Rpcrt4.dll

请参阅

异步 RPC

RPC_ASYNC_STATE

RpcAsyncCancelCall

RpcAsyncCompleteCall

RpcAsyncGetCallHandle

RpcAsyncGetCallStatus

RpcAsyncInitializeHandle

RpcServerTestCancel