Compartir a través de


Función CoCancelCall (combaseapi.h)

Solicita la cancelación de una llamada de método DCOM saliente pendiente en un subproceso especificado.

Sintaxis

HRESULT CoCancelCall(
  [in] DWORD dwThreadId,
  [in] ULONG ulTimeout
);

Parámetros

[in] dwThreadId

Identificador del subproceso en el que se va a cancelar la llamada DCOM pendiente. Si este parámetro es 0, la llamada está en el subproceso actual.

[in] ulTimeout

El número de segundos CoCancelCall espera a que el servidor complete la llamada saliente después de que el cliente solicite la cancelación.

Valor devuelto

Esta función puede devolver los valores devueltos estándar E_FAIL, E_OUTOFMEMORY y E_UNEXPECTED, así como los siguientes valores.

Código devuelto Descripción
S_OK
Se realizó la solicitud de cancelación.
E_NOINTERFACE
No hay ningún objeto cancel correspondiente al subproceso especificado.
CO_E_CANCEL_DISABLED
La cancelación de llamadas no está habilitada en el subproceso especificado.
RPC_E_CALL_COMPLETE
La llamada se completó durante el intervalo de tiempo de espera.
RPC_E_CALL_CANCELED
La llamada ya se canceló.

Comentarios

CoCancelCall llama a CoGetCancelObject y, a continuación, ICancelMethodCalls::Cancel en el objeto cancel de la llamada que se ejecuta.

Esta función no busca objetos cancel para llamadas asincrónicas.

El servidor de objetos puede determinar si la llamada se ha cancelado periódicamente llamando a CoTestCancel. Si se ha cancelado la llamada, el servidor de objetos debe limpiar y devolver el control al cliente.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado combaseapi.h (incluya Objbase.h)
Library Ole32.lib
Archivo DLL Ole32.dll

Consulte también

CoTestCancel