40 lines
1,001 B
C++
40 lines
1,001 B
C++
#ifndef __RGSPRTC_H
|
|
#define __RGSPRTC_H
|
|
|
|
#include "regsuprt.h"
|
|
|
|
class CRegSupportCached : public CRegSupport
|
|
{
|
|
public:
|
|
CRegSupportCached();
|
|
virtual ~CRegSupportCached();
|
|
|
|
BOOL RSValueExist(LPCTSTR pszSubKey, LPCTSTR pszValueName);
|
|
BOOL RSSubKeyExist(LPCTSTR pszSubKey);
|
|
|
|
BOOL RSDeleteValue(LPCTSTR pszSubKey, LPCTSTR pszValueName);
|
|
BOOL RSDeleteSubKey(LPCTSTR pszSubKey);
|
|
|
|
HKEY RSDuplicateRootKey();
|
|
|
|
protected:
|
|
void _CloseRegSubKey(HKEY hkeyVolumeSubKey);
|
|
|
|
HKEY _GetRootKey(BOOL fCreate, DWORD dwOptions = REG_OPTION_INVALID);
|
|
|
|
BOOL _SetGeneric(LPCTSTR pszSubKey, LPCTSTR pszValueName,
|
|
PBYTE pb, DWORD cb, DWORD dwType,
|
|
DWORD dwOptions);
|
|
BOOL _GetGeneric(LPCTSTR pszSubKey, LPCTSTR pszValueName,
|
|
PBYTE pb, DWORD* pcb);
|
|
|
|
private:
|
|
void _CloseCachedRootKey();
|
|
|
|
HKEY _hkeyRoot;
|
|
|
|
public:
|
|
static BOOL _fUseCaching;
|
|
};
|
|
|
|
#endif //__RGSPRTC_H
|