mrDarker
2025-08-13 13616f41de368b226bd5acb8c951d6d73e524f34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// BasedConfig.h: interface for the CBasedConfig class.
//
//////////////////////////////////////////////////////////////////////
 
#if !defined(AFX_BASEDCONFIG_H__90C1B236_E7C5_450C_9B90_52079419DA37__INCLUDED_)
#define AFX_BASEDCONFIG_H__90C1B236_E7C5_450C_9B90_52079419DA37__INCLUDED_
 
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
 
/*!
* \brief
* ÀÎÅÍÆäÀ̽º Å¬·¡½º 
* ÆÄÀÏ ÀÔÃâ·Â ¶óÀ̺귯¸®ÀÇ ÀÎÅÍÆäÀ̽º Å¬·¡½º
*/
 
#define SHLM    HKEY_LOCAL_MACHINE
#define SHCU    HKEY_CURRENT_USER
#define SHCR    HKEY_CLASSES_ROOT
 
class CBasedConfig  
{
public:
    CBasedConfig();
    virtual ~CBasedConfig();
 
    virtual BOOL    Initialize(HKEY hKey, CString strKey, CString strFilename) = 0;                                    //!> ÃʱâÈ­ ÇÔ¼ö ÀÎÅÍÆäÀ̽º
    
    //////////////////////////////////////////////////////////////////////////
    virtual BOOL    SetItemValue(CString strName,  CString& strvalue) = 0;                                            //!> Set ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : CStringÇü  
    virtual BOOL    SetItemValue(CString strName, int& nValue) = 0;                                                    //!> Set ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : intÇü  
    virtual BOOL    SetItemValue(CString strName, unsigned short &sValue) = 0;                                        //!> Set ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : unsigned shortÇü  
    virtual BOOL    SetItemValue(CString strName, double& dValue) = 0;                                                //!> Set ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : doubleÇü  
    
    virtual BOOL    SetItemValue(int nIdx, CString strName, CString& strvalue) = 0;                                    //!> Set ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : CStringÇü  
    virtual BOOL    SetItemValue(int nIdx, CString strName, int& nValue) = 0;                                        //!> Set ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : intÇü  
    virtual BOOL    SetItemValue(int nIdx, CString strName, unsigned short &sValue) = 0;                            //!> Set ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : unsigned shortÇü  
    virtual BOOL    SetItemValue(int nIdx, CString strName, double& dValue) = 0;                                    //!> Set ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : doubleÇü  
    
    //////////////////////////////////////////////////////////////////////////
    virtual int        GetItemValue(CString strName, CString& strValue, CString strDefault) = 0;                        //!> Get ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : CStringÇü  
    virtual int        GetItemValue(CString strName, int& nValue, int nDefault) = 0;                                    //!> Get ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : intÇü  
    virtual int        GetItemValue(CString strName, unsigned short &nValue, unsigned short sDefault) = 0;                //!> Get ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : unsigned shortÇü  
    virtual int        GetItemValue(CString strName, double& dValue, double dDefault) = 0;                                //!> Get ÀÎÅÍÆäÀ̽º strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : doubleÇü  
    
    virtual int        GetItemValue(int nIdx, CString strName, CString& strValue, CString strDefault) = 0;                //!> Get ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : CStringÇü  
    virtual int        GetItemValue(int nIdx, CString strName, int& nValue, int nDefault) = 0;                            //!> Get ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : intÇü  
    virtual int        GetItemValue(int nIdx, CString strName, unsigned short &nValue, unsigned short sDefault) = 0;    //!> Get ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : unsigned shortÇü 
    virtual int        GetItemValue(int nIdx, CString strName, double& dValue, double dDefault) = 0;                    //!> Get ÀÎÅÍÆäÀ̽º nIdx : ¹è¿­ À妽º, strName : Ç׸ñ±¸ºÐÀڠŸÀÔ : doubleÇü  
    
    virtual BOOL    RemoveAllItem() = 0;                                                                            //!> ·ÎµåµÈ ¸Þ¸ð¸®ÀÇ ¸ðµç Ç׸ñÀ» »èÁ¦
    virtual BOOL    RemoveItem(CString strName) = 0;                                                                //!> strName À̸§À» °¡Áø Ç׸ñÀ» »èÁ¦
    virtual BOOL    RemoveItem(int nIdx, CString strName) = 0;                                                        //!> ¹è¿­(nIdx), strName À̸§À» °¡Áø Ç׸ñÀ» »èÁ¦
 
    
    virtual BOOL    WriteToFile() = 0;                                                                                //!> ÆÄÀÏ¿¡ Ç׸ñ ¾²±â ( ¸Þ¸ð¸® -> ÆÄÀÏ )
 
    virtual void    SetRewriteMode(BOOL bRewrite) = 0;                                                                //!> ReWrite ¸ðµåÀÇ ¼³Á¤ ( TRUEÀÏ °æ¿ì ¸Þ¸ð¸®¿Í ÆÄÀÏÀ» ½Ç½Ã°£ µ¿±âÈ­ ÇÑ´Ù)
    virtual BOOL    GetRewriteMode() = 0;                                                                            //!> ReWrite ¸ðµå »óÅ ¹Þ±â
    
 
    // OhByungGil  Modify -> LogFile Write
    virtual void    SetLogMode(BOOL bMode) = 0;                                                                        //!> ·Î±× ¸ðµåÀÇ ¼³Á¤ ( TRUEÀÏ °æ¿ì Ç׸ñÀÌ º¯°æµÉ ½Ã¿¡ ·Î±×¸¦ Ãâ·ÂÇÑ´Ù. )
    virtual BOOL    GetLogMode() = 0;                                                                                //!> ·Î±× ¸ðµå »óÅ ¹Þ±â
    virtual void    SetLogFilePath(CString strLogFilePath) = 0;                                                        //!> ·Î±× ÆÄÀÏÀÇ °æ·Î ¼³Á¤
    virtual CString GetLogFilePath() = 0;                                                                            //!> ¼³Á¤µÈ ·Î±× ÆÄÀÏÀÇ °æ·Î ¹Þ±â
};
 
#endif // !defined(AFX_BASEDCONFIG_H__90C1B236_E7C5_450C_9B90_52079419DA37__INCLUDED_)