Condividi tramite


Funzione CoGetCancelObject (combaseapi.h)

Ottiene un puntatore a un'interfaccia di controllo delle chiamate, normalmente ICancelMethodCalls, nell'oggetto cancel corrispondente a una chiamata di metodo COM in uscita in sospeso sulla stessa o su un altro thread client.

Sintassi

HRESULT CoGetCancelObject(
  [in]  DWORD  dwThreadId,
  [in]  REFIID iid,
  [out] void   **ppUnk
);

Parametri

[in] dwThreadId

Identificatore del thread in cui deve essere annullata la chiamata COM in sospeso. Se questo parametro è 0, la chiamata si trova nel thread corrente.

[in] iid

Identificatore univoco globale di un'interfaccia nell'oggetto annulla per la chiamata da annullare. Questo argomento è in genere IID_ICancelMethodCalls.

[out] ppUnk

Riceve l'indirizzo di un puntatore all'interfaccia specificata da riid.

Valore restituito

Questa funzione può restituire i valori restituiti standard E_FAIL, E_INVALIDARG, E_OUTOFMEMORY e E_UNEXPECTED, nonché i valori seguenti.

Codice restituito Descrizione
S_OK
L'oggetto controllo delle chiamate è stato recuperato correttamente.
E_NOINTERFACE
L'oggetto in cui la chiamata viene eseguita non supporta l'interfaccia specificata da riid.

Commenti

Se due o più chiamate sono in sospeso nello stesso thread tramite chiamate annidate, l'ID thread potrebbe non essere sufficiente per identificare la chiamata da annullare. In questo caso , CoGetCancelObject restituisce un'interfaccia annulla corrispondente alla chiamata più interna in sospeso nel thread e ha registrato un oggetto cancel.

Questa funzione non individua gli oggetti annulla per le chiamate asincrone.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione combaseapi.h (include Objbase.h)
Libreria Ole32.lib
DLL Ole32.dll