Partager via


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

CObject

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

Readrecherche 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.

Voir aussi

Graphique hiérarchique
Classes
CWinAppEx, classe