Sends notifications to each advise sink by calling the IAdviseSink::OnDataChange method for each advise sink currently being handled in this instance of IDataAdviseHolder.

HRESULT SendOnDataChange(

IDataObject * pDataObject,
//Points to the data object that has changed
DWORD dwReserved,
DWORD advf
//Advise flag that specifies how to send the notification



[in]Points to the data object where the data has just changed. This data object is used in the subsequent calls to IAdviseSink::OnDataChange.


[in]Reserved for future use; must be zero.


[in]Contains the advise flag values that specify how the call to IAdviseSink::OnDataChange is made. These flag values are from the enumeration ADVF. Typically, the value for advf is NULL. The only exception occurs when the data object is shutting down and must send a final notification that includes the actual data to sinks that have specified ADVF_DATAONSTOP and ADVF_NODATA in their call to IDataObject::DAdvise. In this case, advf contains ADVF_DATAONSTOP.

Return Values


The call to IAdviseSink::OnDataChange was made.


Ran out of memory and the notifications could not be sent.


The data object calls this method when it detects a change that would be of interest to an advise sink that has previously requested notification.

Most notifications include the actual data with them. The only exception is if the ADVF_NODATA flag was previously specified when the connection was initially set up in the IDataAdviseHolder::Advise method.

Before calling the IAdviseSink::OnDataChange method for each advise sink, this method obtains the actual data by calling the IDataObject::GetData method for the data object specified in the pDataObject parameter.

See Also

ADVF, IAdviseSink::OnDataChange

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database