Restore the contents of the cache from a file
bool Restore( const CString& fileName ); |
The full path of a file. The file should have been written using CXlOperCache::Save.
The fuction returns true if the operation was successful, or false it fails for any reason.
Note that the function is deemed to have succeeded if the file cannot be found.
This method is implemented inline in xlserialize.h so that it can easily be used as the basis for your own more sophisiticated implementations, such as a shared cache.
You can save the cache to disk when the XLL closes and restore it each time the XLL is opened.
You should implement the OnXllOpenEx() and OnXllClose() overrideable methods of the application class, to restore and save the cache.
The code below shows how to do this:
CAvgOptApp : public CXllApp { ... CString m_strCacheFile; ... }; BOOL CAvgOptApp::OnXllOpenEx() { // Restore cache if (CXlOperCache::GetUserCacheFilePath(m_strCacheFile)) m_cache.Restore(m_strCacheFile); return TRUE; } void CAvgOptApp::OnXllClose() { m_cache.Save(m_strCacheFile); }
Header: xlserialize.h