Příjem oznámení
Technologie OLE DB poskytuje rozhraní pro příjem oznámení při výskytu události. Ty jsou popsány v Oznámení objektu technologie OLE DB v Programátorské referenci technologie OLE DB. Nastavení těchto událostí používá standardní mechanismus spojovacího bodu modelu COM. Například objekt knihovny ATL, který chce příjmat události prostřednictvím IRowsetNotify implementuje rozhraní IRowsetNotify tím, že přidá IRowsetNotify k seznamu odvozených tříd a zpřístupní jej prostřednictvím makra COM_INTERFACE_ENTRY.
IRowsetNotify má tři metody, které lze volat v různých časech. Pokud chcete odpovědět pouze na jednu z těchto metod, můžete použít třídu IRowsetNotifyImpl, která vrátí E_NOTIMPL pro metody, které vás nezajímají.
Pokud vytvoříte sadu řádků, musíte oznámit zprostředkovateli, že chcete, aby vrácený objekt sady řádků podporoval IConnectionPointContainer, který je potřebný k nastavení oznámení.
Následující kód ukazuje, jak otevřít sadu řádků z objektu knihovny ATL a jak použít funkci AtlAdvise pro nastavení jímky oznámení. AtlAdvise vrátí soubor cookie, který se používá při volání AtlUnadvise.
CDBPropSet propset(DBPROPSET_ROWSET);
propset.AddProperty(DBPROP_IConnectionPointContainer, true);
product.Open(session, _T("Products"), &propset);
AtlAdvise(product.m_spRowset, GetUnknown(), IID_IRowsetNotify, &m_dwCookie);