Partager via


Fonction CoGetCancelObject (combaseapi.h)

Obtient un pointeur vers une interface de contrôle d’appel, normalement ICancelMethodCalls, sur l’objet cancel correspondant à un appel de méthode COM sortant en attente sur le même thread client ou sur un autre thread client.

Syntaxe

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

Paramètres

[in] dwThreadId

Identificateur du thread sur lequel l’appel COM en attente doit être annulé. Si ce paramètre est 0, l’appel se trouve sur le thread actif.

[in] iid

Identificateur global unique d’une interface sur l’objet cancel pour l’appel à annuler. Cet argument est généralement IID_ICancelMethodCalls.

[out] ppUnk

Reçoit l’adresse d’un pointeur vers l’interface spécifiée par riid.

Valeur retournée

Cette fonction peut retourner les valeurs de retour standard E_FAIL, E_INVALIDARG, E_OUTOFMEMORY et E_UNEXPECTED, ainsi que les valeurs suivantes.

Code de retour Description
S_OK
L’objet de contrôle d’appel a été récupéré avec succès.
E_NOINTERFACE
L’objet sur lequel l’appel s’exécute ne prend pas en charge l’interface spécifiée par riid.

Remarques

Si plusieurs appels sont en attente sur le même thread via des appels imbriqués, l’ID de thread peut ne pas être suffisant pour identifier l’appel à annuler. Dans ce cas, CoGetCancelObject retourne une interface d’annulation correspondant à l’appel le plus interne qui est en attente sur le thread et qui a inscrit un objet cancel.

Cette fonction ne localise pas les objets d’annulation pour les appels asynchrones.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête combaseapi.h (inclure Objbase.h)
Bibliothèque Ole32.lib
DLL Ole32.dll