AtlAdvise

创建对象的联接和客户端的接收器之间的连接。

重要说明重要事项

此功能无法在 Windows 运行时执行的应用程序。

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

参数

  • pUnkCP
    [out]一个指向客户端若要连接与对象的 IUnknown 的指针。

  • 拒绝
    [out]一个指向客户端的 IUnknown的指针。

  • iid
    [in] 的GUID连接点。通常,这是作为输出接口由管理连接点的相同。

  • pdw
    [out]一个指向唯一标识连接的cookie的指针。

返回值

标准HRESULT值。

备注

该接收器实现支持的输出接口的连接点。客户端使用 pdw cookie通过将移除连接到 AtlUnadvise

示例

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

要求

Header: atlbase.h

请参见

其他资源

连接点全局函数