Partager via


AtlAdvise

Crée une connexion le récepteur entre le point de connexion d'un objet et d'un client.

Important

Cette fonction ne peut pas être utilisée dans les applications qui s'exécutent dans Windows Runtime.

HRESULT AtlAdvise( 
IUnknown* pUnkCP, 
IUnknown* pUnk, 
const IID& iid, 
LPDWORD pdw  
);

Paramètres

  • pUnkCP
    [in] Un pointeur vers IUnknown de l'objet que le client souhaite connecter avec.

  • pUnk
    [in] Un pointeur vers IUnknowndu client.

  • iid
    [in] GUID du point de connexion. En général, c'est le même que l'interface sortante gérée par le point de connexion.

  • pdw
    [out] Pointeur vers le cookie qui identifie la connexion.

Valeur de retour

Une valeur HRESULT standard.

Notes

Le récepteur implémente l'interface sortante prise en charge par le point de connexion. Le client utilise le cookie d' pdw pour supprimer la connexion en la passant à AtlUnadvise.

Exemple

LPUNKNOWN m_pSourceUnk;
LPUNKNOWN m_pSinkUnk;
DWORD m_dwCustCookie;

// create source object
HRESULT hr = CoCreateInstance (CLSID_MyComponent, NULL, CLSCTX_ALL, 
   IID_IUnknown, (LPVOID*)&m_pSourceUnk);
ATLASSERT(SUCCEEDED(hr));

// Create sink object.  CMySink is a CComObjectRootEx-derived class  
// that implements the event interface methods.
CComObject<CMySink>* pSinkClass;
CComObject<CMySink>::CreateInstance(&pSinkClass);
hr = pSinkClass->QueryInterface (IID_IUnknown, (LPVOID*)&m_pSinkUnk);
ATLASSERT(SUCCEEDED(hr));

hr = AtlAdvise (m_pSourceUnk, m_pSinkUnk, __uuidof(_IMyComponentEvents), &m_dwCustCookie);
ATLASSERT(SUCCEEDED(hr));    

Configuration requise

Header: atlbase.h

Voir aussi

Autres ressources

Fonctions globales de point de connexion