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.
 
 
 
 
 
 

47 lines
1.3 KiB

/****************************************************************************\
*
* reghive.h
*
* Created: William Taylor (wtaylor) 02/13/01
*
* MS Ratings Registry Hive Handling
*
\****************************************************************************/
#ifndef REGISTRY_HIVE_H
#define REGISTRY_HIVE_H
class CRegistryHive
{
private:
bool m_fHiveLoaded; // Hive Loaded?
char m_szPath[MAXPATHLEN+1]; // Hive File Path
CRegKey m_keyHive; // Registry Key to Hive
public:
CRegistryHive();
~CRegistryHive();
const CRegKey & GetHiveKey( void ) { return m_keyHive; }
void UnloadHive( void );
bool OpenHiveFile( bool p_fCreate );
protected:
bool OpenHiveKey( void );
void DeleteRegistryHive( void );
bool CreateNewHive( int & p_riHiveFile );
bool SaveHiveKey( CRegKey & p_keyHive, int p_iFile );
void ClearHivePath( void ) { m_szPath[0] = '\0'; }
BOOL BuildPolName(LPSTR pBuffer, UINT cbBuffer, UINT (WINAPI *PathProvider)(LPTSTR, UINT));
void SetHiveName( int p_iFile );
void LoadHiveFile( int p_iFile );
#ifdef DEBUG
void EnumerateRegistryKeys( HKEY hkeyTop, LPSTR pszKeyName, int iLevel );
#endif
};
#endif