IOleCache2::UpdateCache  FKTGT6

Updates specified cache(s). It updates the cache according to the value of a parameter. This method is used when the application needs precise control over caching.

HRESULT UpdateCache(

    IDataObject * pDataObject,

//Pointer to the data object from which the cache is updated

    DWORD grfUpdt,

//Type of cache to update

    LPVOID pReserved

//Reserved

   );

 

 

Parameters

pDataObject

[in] Pointer to the IDataObjectZHWNNR interface on the data object from which the cache is updated. Object handlers and in-process servers typically pass a non-NULL value. A container application usually passes NULL, and the source is obtained from the currently running object.

grfUpdt

[in] Type of cache to update. The value is obtained by combining values from the following table:

Cache Control Values

Description

UPDFCACHE_NODATACACHE

Updates caches created by using ADVF_NODATA in the call to IOleCache::Cache.

UPDFCACHE_ONSAVECACHE

Updates caches created by using ADVFCACHE_ONSAVE in the call to IOleCache::Cache.

UPDFCACHE_ONSTOPCACHE

Updates caches created by using ADVFCACHE_ONSTOP in the call to IOleCache::Cache.

UPDFCACHE_NORMALCACHE

Dynamically updates the caches (as is normally done when the object sends out OnDataChange notices).

UPDFCACHE_IFBLANK

Updates the cache if blank, regardless of any other flag specified.

UPDFCACHE_ONLYIFBLANK

Updates only caches that are blank.

UPDFCACHE_
IFBLANKORONSAVECACHE

The equivalent of using an OR operation to combine UPDFCACHE_IFBLANK and UPDFCACHE_ONSAVECACHE.

UPDFCACHE_ALL

Updates all caches.

UPDFCACHE_
ALLBUTNODATACACHE

Updates all caches except those created with ADVF_NODATA in the call to IOleCache::Cache.
Thus, you can control updates to the caches created with the ADVF_NODATA flag and only update these caches explicitly.

 

pReserved

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

 

Return Values

This method supports the standard return values E_INVALIDARG, E_OUTOFMEMORY, and E_UNEXPECTED, as well as the following:

S_OK

The cache(s) were updated according to the value specified in grfUpdt.

OLE_E_NOTRUNNING

The specified pDataObject is not running.

CACHE_E_NOCACHE_UPDATED

None of the caches were updated.

CACHE_S_SOMECACHES_NOTUPDATED

Some of the caches were updated.

 

See Also

IOleCache8PI.8S, IOleCacheControl1VA8ROP, IDataObjectZHWNNR