Retrieves a pointer to a new instance of an OLE-provided implementation of a data cache.
HRESULT CreateDataCache( LPUNKNOWN pUnkOuter, REFCLSID rclsid, REFIID iid, LPVOID *ppv );
If the cache is to be created as part of an aggregate, pointer to the controlling IUnknown of the aggregate. If not, the parameter should be NULL.
CLSID used to generate icon labels. This value is typically CLSID_NULL.
Reference to the identifier of the interface the caller wants to use to communicate with the cache. This value is typically IID_IOleCache (defined in the OLE headers to equal the interface identifier for IOleCache).
Address of pointer variable that receives the interface pointer requested in riid. Upon successful return, *ppvObj contains the requested interface pointer to the supplied cache object.
This function returns S_OK on success. Other possible values include the following.
||The interface represented by riid is not supported by the object. The parameter ppvObj is set to NULL.|
||Insufficient memory for the operation.|
||One or more parameters are invalid.|
The cache object created by CreateDataCache supports the IOleCache, IOleCache2, and IOleCacheControl interfaces for controlling the cache. It also supports the IPersistStorage, IDataObject (without advise sinks), IViewObject, and IViewObject2 interfaces.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|