IDataAdviseHolder::SendOnDataChange 方法 (objidl.h)

通过调用 IAdviseSink::OnDataChange 方法,将通知发送到当前由建议持有者对象的此实例处理的每个建议接收器,为其建立了连接。

语法

HRESULT SendOnDataChange(
  [in] IDataObject *pDataObject,
  [in] DWORD       dwReserved,
  [in] DWORD       advf
);

参数

[in] pDataObject

指向数据刚刚更改的数据对象上的 IDataObject 接口的指针。 此指针用于对 IAdviseSink::OnDataChange 的后续调用。

[in] dwReserved

此参数是保留的,必须为 0。

[in] advf

用于指定如何调用 IAdviseSink::OnDataChange 的建议标志的容器。 这些标志值来自枚举 ADVF。 通常, advf 的值为 NULL。 当数据对象正在关闭并且必须发送包含实际数据的最终通知时,唯一的异常是,这些接收器在调用 IDataObject::D Advise 时指定了ADVF_DATAONSTOP和ADVF_NODATA。 在这种情况下, advf 包含ADVF_DATAONSTOP。

返回值

此方法在成功时返回S_OK。

注解

当数据对象检测到之前请求通知的建议接收器感兴趣的更改时,它必须调用此方法。

大多数通知都包含实际数据。 唯一的例外是,如果以前在 IDataAdviseHolder::Advise 方法中最初设置连接时指定了 ADVF_NODATA 标志。

在为每个建议接收器调用 IAdviseSink::OnDataChange 方法之前,此方法通过 pDataObject 参数中指定的指针调用 IDataObject::GetData 方法来获取实际数据。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 objidl.h

另请参阅

IAdviseSink::OnDataChange

IDataAdviseHolder