source: trunk/gsinstaller/gsRegistry.h@ 2535

Last change on this file since 2535 was 1590, checked in by cs025, 24 years ago

Added testing for the existence of parent keys when a key is created; this
fixed the omission of implicit parent creation when a key was created, and
the parent's creation was therefore not logged, resulting in a non-destruction
of the parent key when an uninstall was performed.

  • Property svn:keywords set to Author Date Id Revision
File size: 1.3 KB
Line 
1#ifndef _GSREGISTRY_H_
2#define _GSREGISTRY_H_
3#include <string>
4
5// use the standard namespace
6#if !defined (GSDL_NAMESPACE_BROKEN)
7#if defined(GSDL_USE_OBJECTSPACE)
8using namespace ospace::std;
9#else
10using namespace std;
11#endif
12#endif
13
14#include "registry.h"
15#include "configFile.h"
16#include "FilePath.h"
17#include "uninstall.h"
18#include "stringArray.h"
19
20class gsRegistry : public installAgent
21{ private:
22 string volumeKey;
23 string collectKey;
24
25 bool logAction(string action, HKEY base, string path, string item, string value);
26 bool ensureParentKeyExists( HKEY base, string key);
27 public:
28 gsRegistry(installManager &manager, configureFile &configFileb);
29 bool storeKeyString( HKEY base, string path, string item, string value);
30 bool collectionInstalled();
31 bool volumeInstalled();
32 bool ensureKeysExist();
33 bool ensureKeyExists( HKEY base, string key);
34 bool destroyKey(HKEY base, string key);
35 bool destroyItem(HKEY base, string key, string name);
36 string collectKeyId();
37 string volumeKeyId();
38 string exeKeyId(string exeName);
39 string uninstallKeyId(string collectName);
40 FilePath *collectionPath();
41 bool undoAction(string ActionName, stringArray &params);
42// Path();
43};
44#endif
45
Note: See TracBrowser for help on using the repository browser.