Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.3 KiB

  1. #include "shellprv.h"
  2. #pragma hdrstop
  3. #include "rscchvr.h"
  4. #include "subdata.h"
  5. class CRSSubData : public CSubData, private CRSCacheVersion
  6. {
  7. ///////////////////////////////////////////////////////////////////////////////
  8. // Public methods
  9. ///////////////////////////////////////////////////////////////////////////////
  10. public:
  11. BOOL InitRegSupport(HKEY hkey, LPCTSTR pszKey1, LPCTSTR pszKey2, LPCTSTR pszKey3,
  12. DWORD cbSizeOfData, BOOL fVolatile = FALSE);
  13. virtual BOOL Update();
  14. BOOL Propagate();
  15. BOOL ExistInReg();
  16. void WipeReg();
  17. void Invalidate();
  18. #ifndef WINNT
  19. void FakeVolatileOnWin9X();
  20. #endif
  21. CRSSubData();
  22. ///////////////////////////////////////////////////////////////////////////////
  23. // Miscellaneous helpers
  24. ///////////////////////////////////////////////////////////////////////////////
  25. protected:
  26. void _RSCVDeleteRegCache();
  27. BOOL _RSSDGetDataFromReg();
  28. DWORD _GetSizeOfData();
  29. void _SetSizeOfData(DWORD cbSizeOfData);
  30. private:
  31. BOOL _Propagate();
  32. ///////////////////////////////////////////////////////////////////////////////
  33. // Data
  34. ///////////////////////////////////////////////////////////////////////////////
  35. private:
  36. DWORD _cbSizeOfData;
  37. #ifndef WINNT
  38. BOOL _fVolatile;
  39. #endif
  40. };