Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La CSettingsStoreSP classe est une classe d’assistance que vous pouvez utiliser pour créer des instances de la classe CSettingsStore.
Syntaxe
class CSettingsStoreSP
Membres
Constructeurs publics
| Nom | Description |
|---|---|
| CSettingsStoreSP ::CSettingsStoreSP | Construit un objet CSettingsStoreSP. |
Méthodes publiques
| Nom | Description |
|---|---|
| CSettingsStoreSP ::Create | Crée une instance d’une classe dérivée de CSettingsStore. |
| CSettingsStoreSP ::SetRuntimeClass | Définit la classe runtime. La Create méthode utilise la classe runtime pour déterminer la classe d’objets à créer. |
Données membres
| Nom | Description |
|---|---|
m_dwUserData |
Données utilisateur personnalisées stockées dans l’objet CSettingsStoreSP . Vous fournissez ces données dans le constructeur de l’objet CSettingsStoreSP . |
m_pRegistry |
Objet CSettingsStoredérivé créé par la Create méthode. |
Notes
Vous pouvez utiliser la CSettingsStoreSP classe pour rediriger toutes les opérations de Registre MFC vers d’autres emplacements, tels qu’un fichier XML ou une base de données. Pour ce faire, procédez comme suit :
Créez une classe (par exemple
CMyStore) et dérivez-la deCSettingsStore.Utilisez DECLARE_DYNCREATE et IMPLEMENT_DYNCREATE macros avec votre classe personnalisée
CSettingsStorepour activer la création dynamique.Remplacez les fonctions virtuelles et implémentez les fonctions et
WritelesReadfonctions de votre classe personnalisée. Implémentez toute autre fonctionnalité permettant de lire et d’écrire des données à votre emplacement souhaité.Dans votre application, appelez
CSettingsStoreSP::SetRuntimeClasset transmettez un pointeur vers la structure CRuntimeClass obtenue à partir de votre classe.
Chaque fois que l’infrastructure accède généralement au Registre, elle instancie dynamiquement votre classe personnalisée et l’utilise pour lire ou écrire des données.
CSettingsStoreSP::SetRuntimeClass utilise une variable statique globale. Par conséquent, un seul magasin personnalisé est disponible à la fois.
Spécifications
En-tête : afxsettingsstore.h
CSettingsStoreSP ::Create
Crée une instance d’un objet dérivé de la classe CSettingsStore.
CSettingsStore& CSettingsStoreSP Create(
BOOL bAdmin,
BOOL bReadOnly);
Paramètres
bAdmin
[in] Paramètre booléen qui détermine si un CSettingsStore objet est créé en mode administrateur.
bReadOnly
[in] Paramètre booléen qui détermine si un objet est créé pour un CSettingsStore accès en lecture seule.
Valeur de retour
Référence à l’objet nouvellement créé CSettingsStore .
Notes
Vous pouvez utiliser la méthode CSettingsStoreSP ::SetRuntimeClass pour déterminer le type d’objet CSettingsStoreSP::Create créé. Par défaut, cette méthode crée un CSettingsStore objet.
Si vous créez un CSettingsStore objet en mode administrateur, l’emplacement par défaut de tous les accès au Registre est HKEY_LOCAL_MACHINE. Sinon, l’emplacement par défaut de tous les accès au Registre est HKEY_CURRENT_USER.
Si bAdmin a la valeur TRUE, l’application doit disposer de droits d’administration. Sinon, il échoue lorsqu’il tente d’accéder au Registre.
Exemple
L’exemple suivant montre comment utiliser la Create méthode de la CSettingsStoreSP classe.
CSettingsStoreSP regSP;
CSettingsStore ® = regSP.Create(FALSE, TRUE);
CSettingsStoreSP ::CSettingsStoreSP
Construit un objet CSettingsStoreSP Class .
CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);
Paramètres
dwUserData
[in] Données définies par l’utilisateur que l’objet CSettingsStoreSP stocke.
Notes
L’objet CSettingsStoreSP stocke les données de dwUserData dans la variable m_dwUserDatamembre protégée.
CSettingsStoreSP ::SetRuntimeClass
Définit la classe runtime. La méthode CSettingsStoreSP ::Create utilise la classe runtime pour déterminer le type d’objet à créer.
static BOOL __stdcall CSettingsStoreSP::SetRuntimeClass(CRuntimeClass* pRTI);
Paramètres
pRTI
[in] Pointeur vers les informations de classe runtime pour une classe dérivée de la classe CSettingsStore.
Valeur de retour
TRUE si elle réussit ; FALSE si la classe identifiée par pRTI n’est pas dérivée de CSettingsStore.
Notes
Vous pouvez utiliser la classe CSettingsStoreSP pour dériver des classes à partir de CSettingsStore. Utilisez la méthode SetRuntimeClass si vous souhaitez créer des objets d’une classe personnalisée dérivée de CSettingsStore.