共用方式為


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,以及下列值。

傳回碼 描述
S_OK
已提出取消要求。
E_NOINTERFACE
沒有對應至指定執行緒的 cancel 物件。
CO_E_CANCEL_DISABLED
未在指定的執行緒上啟用呼叫取消。
RPC_E_CALL_COMPLETE
在逾時間隔期間已完成呼叫。
RPC_E_CALL_CANCELED
呼叫已經取消。

備註

CoCancelCall 會呼叫 CoGetCancelObject ,然後在要執行的呼叫取消物件上呼叫 ICancelMethodCalls::Cancel

此函式找不到非同步呼叫的取消物件。

物件服務器可以定期呼叫 CoTestCancel來判斷是否已取消呼叫。 如果已取消呼叫,則物件服務器應該清除並傳回控制權給用戶端。

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 combaseapi.h (包含 Objbase.h)
程式庫 Ole32.lib
Dll Ole32.dll

另請參閱

CoTestCancel