1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3 %% Purpose: wxRegKey docs
4 %% Author: Ryan Norton <wxprojects@comcast.net>, C.C.Chakkaradeep
8 %% Copyright: (c) Ryan Norton (C.C.Chakkaradeep?)
9 %% License: wxWindows license
10 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12 \section{\class{wxRegKey
}}\label{wxregkey
}
14 wxRegKey is a class representing the Windows registry (it is only available
15 under Windows). One can create, query and delete registry keys using this
18 The Windows registry is easy to understand. There are five registry keys,
21 \begin{enumerate
}\itemsep=
0pt
22 \item HKEY
\_CLASSES\_ROOT (HKCR)
23 \item HKEY
\_CURRENT\_USER (HKCU)
24 \item HKEY
\_LOCAL\_MACHINE (HKLM)
25 \item HKEY
\_CURRENT\_CONFIG (HKCC)
26 \item HKEY
\_USERS (HKU)
29 After creating a key, it can hold a value. The values can be:
31 \begin{enumerate
}\itemsep=
0pt
35 \item Multi String Value
36 \item Expandable String Value
39 \wxheading{Derived from
}
43 \wxheading{Include files
}
50 wxRegKey *pRegKey = new wxRegKey("HKEY_LOCAL_MACHINE\
\Software\
\MyKey");
52 //will create the Key if it does not exist
53 if( !pRegKey->Exists() )
56 //will create a new value MYVALUE and set it to
12
57 pRegKey->SetValue("MYVALUE",
12);
59 //Query for the Value and Retrieve it
62 pRegKey->QueryValue("MYVALUE",&lMyVal);
63 strTemp.Printf("
%d",lMyVal);
64 wxMessageBox(strTemp,"Registry Value",
0,this);
66 //Retrive the number of SubKeys and enumerate them
68 pRegKey->GetKeyInfo(&nSubKeys,NULL,NULL,NULL);
70 pRegKey->GetFirstKey(strTemp,
1);
71 for(int i=
0;i<nSubKeys;i++)
73 wxMessageBox(strTemp,"SubKey Name",
0,this);
74 pRegKey->GetNextKey(strTemp,
1);
78 \latexignore{\rtfignore{\wxheading{Members
}}}
80 \membersection{wxRegKey::wxRegKey
}\label{wxregkeyctor
}
82 \func{}{wxRegKey
}{\void}
84 The Constructor to set to HKCR
86 \func{}{wxRegKey
}{\param{const wxString\&
}{ strKey
}}
88 The constructor to set the full name of the key.
90 \func{}{wxRegKey
}{\param{const wxRegKey\&
}{ keyParent
},
\param{const wxString\&
}{ strKey
}}
92 The constructor to set the full name of the key under a previously created parent.
94 \membersection{wxRegKey::Close
}\label{wxregkeyclose
}
96 \func{void
}{Close
}{\void}
100 \membersection{wxRegKey::Create
}\label{wxregkeycreate
}
102 \func{bool
}{Create
}{\param{bool
}{bOkIfExists = true
}}
104 Creates the key. Will fail if the key already exists and
{\it bOkIfExists
} is false.
106 \membersection{wxRegKey::DeleteSelf
}\label{wxregkeydeleteself
}
108 \func{void
}{DeleteSelf
}{\void}
110 Deletes this key and all of its subkeys and values recursively.
112 \membersection{wxRegKey::DeleteKey
}\label{wxregkeydeletekey
}
114 \func{void
}{DeleteKey
}{\param{const wxChar *
}{szKey
}}
116 Deletes the subkey with all of its subkeys/values recursively.
118 \membersection{wxRegKey::DeleteValue
}\label{wxregkeydeletevalue
}
120 \func{void
}{DeleteValue
}{\param{const wxChar *
}{szKey
}}
122 Deletes the named value.
124 \membersection{wxRegKey::Exists
}\label{wxregkeyexists
}
126 \constfunc{static bool
}{Exists
}{\void}
128 Returns true if the key exists.
130 \membersection{wxRegKey::GetName
}\label{wxregkeygetname
}
132 \constfunc{wxString
}{GetName
}{\param{bool
}{bShortPrefix = true
}}
134 Gets the name of the registry key.
136 \membersection{wxRegKey::GetFirstKey
}\label{wxregkeygetfirstkey
}
138 \func{bool
}{GetKeyValue
}{\param{wxString\&
}{ strKeyName
},
\param{long\&
}{ lIndex
}}
142 \membersection{wxRegKey::GetFirstValue
}\label{wxregkeygetfirstvalue
}
144 \func{bool
}{GetFirstValue
}{\param{wxString\&
}{ strValueName
},
\param{long\&
}{ lIndex
}}
146 Gets the first value of this key.
148 \membersection{wxRegKey::GetKeyInfo
}\label{wxregkeygetkeyinfo
}
150 \constfunc{bool
}{Exists
}{\param{size
\_t *
}{pnSubKeys
},
\param{size
\_t *
}{pnValues
},
\param{size
\_t *
}{pnMaxValueLen
}}
152 Gets information about the key.
154 \wxheading{Parameters
}
156 \docparam{pnSubKeys
}{The number of subkeys.
}
158 \docparam{pnMaxKeyLen
}{The maximum length of the subkey name.
}
160 \docparam{pnValues
}{The number of values.
}
162 \membersection{wxRegKey::GetNextKey
}\label{wxregkeygetnextkey
}
164 \constfunc{bool
}{GetNextKey
}{\param{wxString\&
}{ strKeyName
},
\param{long\&
}{ lIndex
}}
168 \membersection{wxRegKey::GetNextValue
}\label{wxregkeygetnextvalue
}
170 \constfunc{bool
}{GetNextValue
}{\param{wxString\&
}{ strValueName
},
\param{long\&
}{ lIndex
}}
172 Gets the next key value for this key.
174 \membersection{wxRegKey::HasValue
}\label{wxregkeyhasvalue
}
176 \constfunc{bool
}{HasValue
}{\param{const wxChar *
}{szValue
}}
178 Returns true if the value exists.
180 \membersection{wxRegKey::HasValues
}\label{wxregkeyhasvalues
}
182 \constfunc{bool
}{HasValues
}{\void}
184 Returns true if any values exist.
186 \membersection{wxRegKey::HasSubKey
}\label{wxregkeyhassubkey
}
188 \constfunc{bool
}{HasSubKey
}{\param{const wxChar *
}{szKey
}}
190 Returns true if given subkey exists.
192 \membersection{wxRegKey::HasSubKeys
}\label{wxregkeyhassubkeys
}
194 \constfunc{bool
}{HasSubKeys
}{\void}
196 Returns true if any subkeys exist.
198 \membersection{wxRegKey::IsEmpty
}\label{wxregkeyisempty
}
200 \constfunc{bool
}{IsEmpty
}{\void}
202 Returns true if this key is empty, nothing under this key.
204 \membersection{wxRegKey::IsOpened
}\label{wxregkeyisopened
}
206 \constfunc{bool
}{IsOpened
}{\void}
208 Returns true if the key is opened.
210 \membersection{wxRegKey::Open
}\label{wxregkeyopen
}
212 \func{bool
}{Open
}{\void}
214 Explicitly opens the key to be opened.
216 \membersection{wxRegKey::QueryValue
}\label{wxregkeyqueryvalue
}
218 \constfunc{bool
}{QueryValue
}{\param{const wxChar *
}{szValue
},
\param{wxString\&
}{ strValue
}}
220 Retrieves the string value.
222 \constfunc{bool
}{QueryValue
}{\param{const wxChar *
}{szValue
},
\param{long *
}{plValue
}}
224 Retrieves the numeric value.
226 \membersection{wxRegKey::Rename
}\label{wxregkeyrename
}
228 \func{bool
}{Rename
}{\param{const wxChar *
}{ szNewName
}}
232 \membersection{wxRegKey::RenameValue
}\label{wxregkeyrenamevalue
}
234 \func{bool
}{RenameValue
}{\param{const wxChar *
}{szValueOld
},
\param{const wxChar *
}{szValueNew
}}
238 \membersection{wxRegKey::SetValue
}\label{wxregkeysetvalue
}
240 \func{bool
}{SetValue
}{\param{const wxChar *
}{szValue
},
\param{long
}{ lValue
}}
242 Sets the numeric value.