// -------------------------------------------------------------------
// Filename : registry.h
// Description : class declaration of registry routines
// By : John Cruise
// Date : 1996 Mar 25
// Last Modified : 1996 Mar 25
// Notes : Tabstop = 4
// -------------------------------------------------------------------
// Modifications : 1995 Mar 25 John Cruise
// : none as of now
// -------------------------------------------------------------------
#if !defined( _REGISTRY_H )
#define _REGISTRY_H
#include <windows.h>
#include <winreg.h>
class CRegistry {
public:
// constructors
CRegistry( HKEY hKey, LPCTSTR cSubKey, DWORD nOptions=0, REGSAM samDesired=KEY_ALL_ACCESS );
CRegistry();
// open registry function
virtual void Open( HKEY hKey, LPCTSTR cSubKey, DWORD nOptions=0, REGSAM samDesired=KEY_ALL_ACCESS );
// close registry function
virtual void Close();
// write registry function
virtual void Write( LPSTR cValueName, CONST BYTE *pData, DWORD nSize, DWORD nType=REG_SZ );
// read registry function
virtual void Read( LPBYTE pDest, DWORD *nSize, DWORD *nType, LPSTR cValueName );
// get last error registry function
virtual LONG GetLastError();
// enumerate the values
virtual BOOL EnumValue( DWORD nIndex, LPSTR szValueName, LPDWORD nValueNameLen, LPDWORD nType=NULL, LPBYTE lpValue=NULL, LPDWORD nValueSize=NULL );
// enumerate the keys
virtual BOOL EnumKey( DWORD nIndex, LPSTR szKeyName, LPDWORD nKeyNameLen, PFILETIME stTimeWrite, LPSTR szClass=NULL, LPDWORD nClassLen=NULL );
// destructor
virtual ~CRegistry();
protected:
BOOL m_bIsOpen;
HKEY m_hKey;
LONG m_nLastError;
};
#endif
syntax highlighted by Code2HTML, v. 0.8.11