IOleCache2::UpdateCache 方法 (oleidl.h)

汇报指定的缓存。 当应用程序需要精确控制缓存时,将使用此方法。

语法

HRESULT UpdateCache(
  [in] LPDATAOBJECT pDataObject,
  [in] DWORD        grfUpdf,
  [in] LPVOID       pReserved
);

参数

[in] pDataObject

指向从中更新缓存的数据对象上的 IDataObject 接口的指针。 对象处理程序和进程内服务器通常传递非 NULL 值。 容器应用程序通常传递 NULL,并且源是从当前正在运行的对象获取的。

[in] grfUpdf

要更新的缓存的类型。 此参数可使用以下一个或多个值。

含义
UPDFCACHE_NODATACACHE
汇报调用 IOleCache::Cache 时使用 ADVF_NODATA 创建的缓存。
UPDFCACHE_ONSAVECACHE
汇报调用 IOleCache::Cache 时使用 ADVFCACHE_ONSAVE 创建的缓存。
UPDFCACHE_ONSTOPCACHE
汇报调用 IOleCache::Cache 时使用 ADVFCACHE_ONSTOP 创建的缓存。
UPDFCACHE_NORMALCACHE
(对象) 发送 OnDataChange 通知时,动态更新缓存 (。
UPDFCACHE_IFBLANK
汇报缓存(如果为空),而不考虑指定的任何其他标志。
UPDFCACHE_ONLYIFBLANK
仅汇报为空的缓存。
UPDFCACHE_ IFBLANKORONSAVECACHE
等效于使用 OR 操作来合并UPDFCACHE_IFBLANK和UPDFCACHE_ONSAVECACHE。
UPDFCACHE_ALL
汇报所有缓存。
UPDFCACHE_ ALLBUTNODATACACHE
在调用 IOleCache::Cache 时,汇报除使用 ADVF_NODATA 创建的缓存之外的所有缓存。 因此,可以控制对使用 ADVF_NODATA 标志创建的缓存的更新,并且仅显式更新这些缓存。

[in] pReserved

此参数是保留的,必须为 NULL

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
E_INVALIDARG
其中一个参数无效。
E_UNEXPECTED
发生意外错误。
E_OUTOFMEMORY
可用于此操作的内存不足。
OLE_E_NOTRUNNING
指定的 pDataObject 未运行。
CACHE_E_NOCACHE_UPDATED
未更新任何缓存。
CACHE_S_SOMECACHES_NOTUPDATED
某些缓存已更新。

要求

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

另请参阅

IDataObject

IOleCache

IOleCache2

IOleCacheControl