]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - tools/src/tools/Utils/win32/RegKeyEx.h
Initial revision
[karo-tx-redboot.git] / tools / src / tools / Utils / win32 / RegKeyEx.h
1 //####COPYRIGHTBEGIN####
2 //                                                                          
3 // ----------------------------------------------------------------------------
4 // Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
5 //
6 // This program is part of the eCos host tools.
7 //
8 // This program is free software; you can redistribute it and/or modify it 
9 // under the terms of the GNU General Public License as published by the Free 
10 // Software Foundation; either version 2 of the License, or (at your option) 
11 // any later version.
12 // 
13 // This program is distributed in the hope that it will be useful, but WITHOUT 
14 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
15 // FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for 
16 // more details.
17 // 
18 // You should have received a copy of the GNU General Public License along with
19 // this program; if not, write to the Free Software Foundation, Inc., 
20 // 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21 //
22 // ----------------------------------------------------------------------------
23 //                                                                          
24 //####COPYRIGHTEND####
25 #if !defined(AFX_REGKEYEX_H__2E80C136_9E6E_11D3_A538_00A0C949ADAC__INCLUDED_)
26 #define AFX_REGKEYEX_H__2E80C136_9E6E_11D3_A538_00A0C949ADAC__INCLUDED_
27
28 #if _MSC_VER > 1000
29 #pragma once
30 #endif // _MSC_VER > 1000
31 // RegKeyEx.h : header file
32 //
33
34 /////////////////////////////////////////////////////////////////////////////
35 // CRegKeyEx window
36 #include <atlbase.h>
37
38 class CRegKeyEx : public CRegKey
39 {
40 // Construction
41 public:
42   CRegKeyEx():CRegKey(){}
43         CRegKeyEx(HKEY hKeyParent, LPCTSTR lpszKeyName, REGSAM samDesired = KEY_ALL_ACCESS);
44         virtual ~CRegKeyEx();
45
46   class Value {
47   public:
48     
49     Value ();
50     //Value (__int64 i64);
51     Value (LPCTSTR psz);
52     Value (DWORD dw);
53     virtual ~Value();
54
55     DWORD Type() const { return m_dwType; }
56   protected:
57     DWORD m_dwType;
58     union {
59       LPTSTR  m_psz;
60       DWORD   m_dw;
61     };
62   };
63 // Attributes
64 public:
65
66 // Operations
67 public:
68
69 // Implementation
70 public:
71         bool QueryValue (LPCTSTR pszValueName,CString &str);
72   bool QueryValue(int nIndex,CString &strName,CString &strValue);
73   bool QueryValue (LPCTSTR pszValueName,DWORD &dw);
74   bool QueryValue(int nIndex,CString &strName,DWORD &dwValue);
75
76   bool QueryKey(int nIndex,CString &strName);
77   
78   Value QueryValue (LPCTSTR pszValueName);
79         Value QueryValue (int nIndex,CString &strName);
80
81         // Generated message map functions
82 };
83
84 /////////////////////////////////////////////////////////////////////////////
85
86 #endif // !defined(AFX_REGKEYEX_H__2E80C136_9E6E_11D3_A538_00A0C949ADAC__INCLUDED_)