次の方法で共有


AtlAdvise

オブジェクトのコネクション ポイントとクライアントのシンクとの間に接続を確立します。

重要 : 重要

この関数は Windows ランタイムで実行されるアプリケーションで使用することはできません。

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

パラメーター

  • pUnkCP
    [入力]クライアントがに接続するオブジェクトの IUnknown へのポインター。

  • pUnk
    [入力]クライアントの IUnknownへのポインター。

  • iid
    [入力]接続ポイントの GUID。通常、コネクション ポイント管理されるアウトゴーイング インターフェイスと同じです。

  • pdw
    [入力]接続を区別するクッキーへのポインター。

戻り値

標準の HRESULT 値。

解説

コネクション ポイント シンクは、サポートされているアウトゴーイング インターフェイスを実装します。クライアントは AtlUnadviseに渡して接続を削除するに pdw のクッキーが使用されます。

使用例

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));    

必要条件

ヘッダー: atlbase.h

参照

その他の技術情報

コネクション ポイントに関するグローバル関数