CSettingsStore, classe
Encapsule les fonctions API Windows, fournissant une interface orientée objet que vous utilisez pour accéder au Registre.
Syntaxe
class CSettingsStore : public CObject
Membres
Constructeurs publics
Nom | Description |
---|---|
CSettingsStore ::CSettingsStore | Construit un objet CSettingsStore . |
Méthodes publiques
Nom | Description |
---|---|
CSettingsStore ::Close | Ferme la clé de Registre ouverte. |
CSettingsStore ::CreateKey | Ouvre la clé spécifiée ou la crée s’il n’existe pas. |
CSettingsStore ::D eleteKey | Supprime la clé spécifiée et tous ses enfants. |
CSettingsStore ::D eleteValue | Supprime la valeur spécifiée de la clé ouverte. |
CSettingsStore ::Open | Ouvre la clé spécifiée. |
CSettingsStore ::Read | Récupère les données d’une valeur de clé spécifiée. |
CSettingsStore ::Write | Écrit une valeur dans le Registre sous la clé ouverte. |
Notes
Les fonctions CreateKey
membres et Open
sont très similaires. Si la clé de Registre existe déjà et CreateKey
Open
que la fonction est identique. Toutefois, si la clé de Registre n’existe pas, CreateKey
la crée alors qu’elle Open
retourne une valeur d’erreur.
Exemple
L’exemple suivant montre comment utiliser les méthodes Open et Read de la CSettingsStore
classe. Cet extrait de code fait partie de l’exemple de démonstration de l’info-bulle.
CSettingsStore reg(FALSE, TRUE);
DWORD dwEnableBalloonTips = 1;
if (reg.Open(_T("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced")) &&
reg.Read(_T("EnableBalloonTips"), dwEnableBalloonTips))
{
return dwEnableBalloonTips == 1;
}
Hiérarchie d'héritage
CSettingsStore
Spécifications
En-tête : afxsettingsstore.h
CSettingsStore ::Close
Ferme la clé de Registre ouverte.
virtual void Close();
Notes
Par défaut, cette méthode est appelée à partir du destructeur de la classe CSettingsStore.
CSettingsStore ::CreateKey
Ouvre une clé de Registre ou la crée s’il n’existe pas.
virtual BOOL CreateKey(LPCTSTR pszPath);
Paramètres
pszPath
[in] Spécifie le nom d’une clé à créer ou ouvrir.
Valeur de retour
0 si elle réussit ; sinon, valeur différente de zéro.
Notes
CreateKey
utilise m_hKey
comme racine des demandes de registre. Il recherche pszPath comme sous-clé de m_hKey
. Si la clé n’existe pas, CreateKey
la crée. Sinon, il ouvre la clé. CreateKey
définit m_hKey
ensuite la clé créée ou ouverte.
CSettingsStore ::CSettingsStore
Crée un objet CSettngsStore
.
CSettingsStore(
BOOL bAdmin,
BOOL bReadOnly);
Paramètres
bAdmin
[in] Paramètre booléen qui spécifie si l’objet CSettingsStore
agit en mode administrateur.
bReadOnly
[in] Paramètre booléen qui spécifie si l’objet CSettingsStore
est créé en mode lecture seule.
Notes
Si bAdmin a la valeur TRUE, la m_hKey
variable membre est définie sur HKEY_LOCAL_MACHINE. Si vous définissez bAdmin sur FALSE, m_hKey
est défini sur HKEY_CURRENT_USER.
L’accès à la sécurité dépend du paramètre bReadOnly . Si bReadonly a la valeur FALSE, l’accès de sécurité est défini sur KEY_ALL_ACCESS. Si bReadyOnly a la valeur TRUE, l’accès de sécurité est défini sur une combinaison de KEY_QUERY_VALUE, KEY_NOTIFY et KEY_ENUMERATE_SUB_KEYS. Pour plus d’informations sur l’accès à la sécurité avec le Registre, consultez La sécurité des clés de Registre et les droits d’accès.
Destructeur pour CSettingsStore
les m_hKey
mises en production automatiquement.
CSettingsStore ::D eleteKey
Supprime une clé et tous ses enfants du Registre.
virtual BOOL DeleteKey(
LPCTSTR pszPath,
BOOL bAdmin = FALSE);
Paramètres
pszPath
[in] Nom de la clé à supprimer.
bAdmin
[in] Commutateur qui spécifie l’emplacement de la clé à supprimer.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Cette méthode échoue si l’objet CSettingsStore
est en mode lecture seule.
Si le paramètre bAdmin est égal à zéro, DeleteKey
recherche la clé à supprimer sous HKEY_CURRENT_USER. Si bAdmin n’est pas différent de zéro, DeleteKey
recherche la clé à supprimer sous HKEY_LOCAL_MACHINE.
CSettingsStore ::D eleteValue
Supprime une valeur de m_hKey
.
virtual BOOL DeleteValue(LPCTSTR pszValue);
Paramètres
pszValue
[in] Spécifie le champ valeur à supprimer.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
CSettingsStore ::Open
Ouvre une clé de Registre.
virtual BOOL Open(LPCTSTR pszPath);
Paramètres
pszPath
[in] Nom d’une clé de Registre.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Une fois cette méthode ouverte avec succès la clé spécifiée, elle définit m_hKey
le handle de cette clé.
CSettingsStore ::Read
Lit une valeur à partir d’une clé dans le Registre.
virtual BOOL Read(
LPCTSTR pszKey,
int& iVal);
virtual BOOL Read(
LPCTSTR pszKey,
DWORD& dwVal);
virtual BOOL Read(
LPCTSTR pszKey,
CString& sVal);
virtual BOOL Read(
LPCTSTR pszKey,
CStringList& scStringList);
virtual BOOL Read(
LPCTSTR pszKey,
CStringArray& scArray);
virtual BOOL Read(
LPCTSTR pszKey,
CDWordArray& dwcArray);
virtual BOOL Read(
LPCTSTR pszKey,
CWordArray& wcArray);
virtual BOOL Read(
LPCTSTR pszKey,
CByteArray& bcArray);
virtual BOOL Read(
LPCTSTR pszKey,
LPPOINT& lpPoint);
virtual BOOL Read(
LPCTSTR pszKey,
CRect& rect);
virtual BOOL Read(
LPCTSTR pszKey,
BYTE** ppData,
UINT* pBytes);
virtual BOOL Read(
LPCTSTR pszKey,
CObList& list);
virtual BOOL Read(
LPCTSTR pszKey,
CObject& obj);
virtual BOOL Read(
LPCTSTR pszKey,
CObject*& pObj);
Paramètres
pszKey
[in] Pointeur vers une chaîne terminée par null qui contient le nom de la valeur à lire à partir du Registre.
iVal
[out] Référence à une variable entière qui reçoit la valeur lue à partir de la clé de Registre.
dwVal
[out] Référence à une variable de mot double 32 bits qui reçoit la valeur lue à partir de la clé de Registre.
sVal
[out] Référence à une variable de chaîne qui reçoit la valeur lue à partir de la clé de Registre.
scStringList
[out] Référence à une variable de liste de chaînes qui reçoit la valeur lue à partir de la clé de Registre.
scArray
[out] Référence à une variable de tableau de chaînes qui reçoit la valeur lue à partir de la clé de Registre.
dwcArray
[out] Référence à une variable de tableau de mots double 32 bits qui reçoit la valeur lue à partir de la clé de Registre.
wcArray
[out] Référence à une variable de tableau de mots 16 bits qui reçoit la valeur lue à partir de la clé de Registre.
bcArray
[out] Référence à une variable de tableau d’octets qui reçoit la valeur lue à partir de la clé de Registre.
lpPoint
[out] Référence à un pointeur vers une POINT
structure qui reçoit la valeur lue à partir de la clé de Registre.
rect
[out] Référence à une variable CRect qui reçoit la valeur lue à partir de la clé de Registre.
ppData
[out] Pointeur vers un pointeur vers des données qui reçoivent la valeur lue à partir de la clé de Registre.
octets
[out] Pointeur vers une variable entière non signée. Cette variable reçoit la taille de la mémoire tampon vers laquelle ppData pointe.
list
[out] Référence à une variable CObList qui reçoit la valeur lue à partir de la clé de Registre.
obj
[out] Référence à une variable CObject qui reçoit la valeur lue à partir de la clé de Registre.
pObj
[out] Référence à un pointeur vers une CObject
variable qui reçoit la valeur lue à partir de la clé de Registre.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Read
recherche pszKey comme sous-clé de m_hKey
.
CSettingsStore ::Write
Écrit une valeur dans le Registre sous la clé ouverte.
virtual BOOL Write(
LPCTSTR pszKey,
int iVal);
virtual BOOL Write(
LPCTSTR pszKey,
DWORD dwVal);
virtual BOOL Write(
LPCTSTR pszKey,
LPCTSTR pszVal);
virtual BOOL Write(
LPCTSTR pszKey,
CStringList& scStringList);
virtual BOOL Write(
LPCTSTR pszKey,
CByteArray& bcArray);
virtual BOOL Write(
LPCTSTR pszKey,
CStringArray& scArray);
virtual BOOL Write(
LPCTSTR pszKey,
CDWordArray& dwcArray);
virtual BOOL Write(
LPCTSTR pszKey,
CWordArray& wcArray);
virtual BOOL Write(
LPCTSTR pszKey,
const CRect& rect);
virtual BOOL Write(
LPCTSTR pszKey,
LPPOINT& lpPoint);
virtual BOOL Write(
LPCTSTR pszKey,
LPBYTE pData,
UINT nBytes);
virtual BOOL Write(
LPCTSTR pszKey,
CObList& list);
virtual BOOL Write(
LPCTSTR pszKey,
CObject& obj);
virtual BOOL Write(
LPCTSTR pszKey,
CObject* pObj);
Paramètres
pszKey
[in] Pointeur vers une chaîne qui contient le nom de la valeur à définir.
iVal
[in] Référence à une variable entière qui contient les données à stocker.
dwVal
[in] Référence à une variable de mot double 32 bits qui contient les données à stocker.
pszVal
[in] Pointeur vers une variable de chaîne terminée par null qui contient les données à stocker.
scStringList
[in] Référence à une variable CStringList qui contient les données à stocker.
bcArray
[in] Référence à une variable de tableau d’octets qui contient les données à stocker.
scArray
[in] Référence à une variable de tableau de chaînes qui contient les données à stocker.
dwcArray
[in] Référence à une variable de tableau de mots double 32 bits qui contient les données à stocker.
wcArray
[in] Référence à une variable de tableau de mots 16 bits qui contient les données à stocker.
rect
[in] Référence à une variable CRect qui contient les données à stocker.
lpPoint
[in] Référence à un pointeur vers une POINT
variable qui contient les données à stocker.
pData
[in] Pointeur vers une mémoire tampon qui contient les données à stocker.
octets
[in] Spécifie la taille, en octets, des données auxquelles le paramètre pData pointe.
list
[in] Référence à une variable CObList qui contient les données à stocker.
obj
[in] Référence à une variable CObject qui contient les données à stocker.
pObj
[in] Pointeur vers un pointeur vers une CObject
variable qui contient les données à stocker.
Valeur de retour
TRUE en cas de réussite, sinon FALSE.
Notes
Pour écrire dans le registre, vous devez définir bReadOnly sur une valeur différente de zéro lorsque vous créez un objet CSettingsStore. Pour plus d’informations, consultez CSettingsStore ::CSettingsStore.