54 lines
1.3 KiB
C++
54 lines
1.3 KiB
C++
#include "shellprv.h"
|
|
#pragma hdrstop
|
|
|
|
#include "rscchvr.h"
|
|
#include "subdata.h"
|
|
|
|
class CRSSubData : public CSubData, private CRSCacheVersion
|
|
{
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// Public methods
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
public:
|
|
BOOL InitRegSupport(HKEY hkey, LPCTSTR pszKey1, LPCTSTR pszKey2, LPCTSTR pszKey3,
|
|
DWORD cbSizeOfData, BOOL fVolatile = FALSE);
|
|
|
|
virtual BOOL Update();
|
|
BOOL Propagate();
|
|
|
|
BOOL ExistInReg();
|
|
|
|
void WipeReg();
|
|
|
|
void Invalidate();
|
|
|
|
#ifndef WINNT
|
|
void FakeVolatileOnWin9X();
|
|
#endif
|
|
|
|
CRSSubData();
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// Miscellaneous helpers
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
protected:
|
|
void _RSCVDeleteRegCache();
|
|
|
|
BOOL _RSSDGetDataFromReg();
|
|
|
|
DWORD _GetSizeOfData();
|
|
void _SetSizeOfData(DWORD cbSizeOfData);
|
|
|
|
private:
|
|
BOOL _Propagate();
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// Data
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
private:
|
|
DWORD _cbSizeOfData;
|
|
|
|
#ifndef WINNT
|
|
BOOL _fVolatile;
|
|
#endif
|
|
}; |