CoCancelCall 函数 (combaseapi.h)
请求取消在指定线程上挂起的出站 DCOM 方法调用。
语法
HRESULT CoCancelCall(
[in] DWORD dwThreadId,
[in] ULONG ulTimeout
);
参数
[in] dwThreadId
要取消挂起的 DCOM 调用的线程的标识符。 如果此参数为 0,则调用位于当前线程上。
[in] ulTimeout
客户端请求取消后 ,CoCancelCall 等待服务器完成出站调用的秒数。
返回值
此函数可以返回标准返回值E_FAIL、E_OUTOFMEMORY和E_UNEXPECTED,以及以下值。
返回代码 | 说明 |
---|---|
|
发出取消请求。 |
|
没有对应于指定线程的取消对象。 |
|
未在指定线程上启用调用取消。 |
|
调用已在超时间隔内完成。 |
|
呼叫已取消。 |
备注
CoCancelCall 在正在执行的调用的取消对象上调用 CoGetCancelObject ,然后 调用 ICancelMethodCalls::Cancel 。
此函数不会查找异步调用的 cancel 对象。
对象服务器可以通过定期调用 CoTestCancel 来确定调用是否已取消。 如果已取消调用,则对象服务器应清理并将控制权返回到客户端。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | combaseapi.h (包括 Objbase.h) |
Library | Ole32.lib |
DLL | Ole32.dll |