Condividi tramite


Classe CSettingsStoreSP

La CSettingsStoreSP classe è una classe helper che è possibile usare per creare istanze della classe CSettingsStore.

Sintassi

class CSettingsStoreSP

Membri

Costruttori pubblici

Nome Descrizione
CSettingsStoreSP::CSettingsStoreSP Costruisce un oggetto CSettingsStoreSP.

Metodi pubblici

Nome Descrizione
CSettingsStoreSP::Create Crea un'istanza di una classe derivata da CSettingsStore.
CSettingsStoreSP::SetRuntimeClass Imposta la classe di runtime. Il Create metodo usa la classe di runtime per determinare la classe di oggetti da creare.

Membri dei dati

Nome Descrizione
m_dwUserData Dati utente personalizzati archiviati nell'oggetto CSettingsStoreSP . Questi dati vengono forniti nel costruttore dell'oggetto CSettingsStoreSP .
m_pRegistry Oggetto CSettingsStorederivato da che il Create metodo crea.

Osservazioni:

È possibile utilizzare la CSettingsStoreSP classe per reindirizzare tutte le operazioni del Registro di sistema MFC ad altri percorsi, ad esempio un file XML o un database. A tale scopo, effettuare i passaggi seguenti:

  1. Creare una classe (ad esempio CMyStore) e derivarla da CSettingsStore.

  2. Usare DECLARE_DYNCREATE e IMPLEMENT_DYNCREATE macro con la classe personalizzata CSettingsStore per abilitare la creazione dinamica.

  3. Eseguire l'override delle funzioni virtuali e implementare le Read funzioni e Write nella classe personalizzata. Implementare qualsiasi altra funzionalità per leggere e scrivere dati nella posizione desiderata.

  4. Nell'applicazione chiamare CSettingsStoreSP::SetRuntimeClass e passare un puntatore alla struttura CRuntimeClass ottenuta dalla classe.

Ogni volta che il framework accede in genere al Registro di sistema, crea ora un'istanza dinamica della classe personalizzata e la usa per leggere o scrivere dati.

CSettingsStoreSP::SetRuntimeClass usa una variabile statica globale. Pertanto, è disponibile un solo archivio personalizzato alla volta.

Requisiti

Intestazione: afxsettingsstore.h

CSettingsStoreSP::Create

Crea una nuova istanza di un oggetto derivato dalla classe CSettingsStore.

CSettingsStore& CSettingsStoreSP Create(
    BOOL bAdmin,
    BOOL bReadOnly);

Parametri

bAdmin
[in] Parametro booleano che determina se un CSettingsStore oggetto viene creato in modalità amministratore.

bReadOnly
[in] Parametro booleano che determina se viene creato un CSettingsStore oggetto per l'accesso in sola lettura.

Valore restituito

Riferimento all'oggetto appena creato CSettingsStore .

Osservazioni:

È possibile usare il metodo CSettingsStoreSP::SetRuntimeClass per determinare il tipo di oggetto CSettingsStoreSP::Create che verrà creato. Per impostazione predefinita, questo metodo crea un CSettingsStore oggetto .

Se si crea un CSettingsStore oggetto in modalità amministratore, il percorso predefinito per tutti gli accessi al Registro di sistema è HKEY_LOCAL_MACHINE. In caso contrario, il percorso predefinito per tutti gli accessi al Registro di sistema è HKEY_CURRENT_USER.

Se bAdmin è TRUE, l'applicazione deve disporre dei diritti di amministrazione. In caso contrario, l'operazione avrà esito negativo quando tenta di accedere al Registro di sistema.

Esempio

Nell'esempio seguente viene illustrato come usare il Create metodo della CSettingsStoreSP classe .

CSettingsStoreSP regSP;
CSettingsStore &reg = regSP.Create(FALSE, TRUE);

CSettingsStoreSP::CSettingsStoreSP

Costruisce un oggetto classe CSettingsStoreSP.

CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);

Parametri

dwUserData
[in] Dati definiti dall'utente archiviati dall'oggetto CSettingsStoreSP .

Osservazioni:

L'oggetto CSettingsStoreSP archivia i dati di dwUserData nella variabile m_dwUserDatamembro protetta .

CSettingsStoreSP::SetRuntimeClass

Imposta la classe di runtime. Il metodo CSettingsStoreSP::Create usa la classe di runtime per determinare il tipo di oggetto da creare.

static BOOL __stdcall CSettingsStoreSP::SetRuntimeClass(CRuntimeClass* pRTI);

Parametri

pRTI
[in] Puntatore alle informazioni sulla classe di runtime per una classe derivata dalla classe CSettingsStore.

Valore restituito

TRUE se ha esito positivo; FALSE se la classe identificata da pRTI non è derivata da CSettingsStore.

Osservazioni:

È possibile usare la classe CSettingsStoreSP per derivare classi da CSettingsStore. Utilizzare il metodo SetRuntimeClass se si desidera creare oggetti di una classe personalizzata derivata da CSettingsStore.

Vedi anche

Classi
Grafico della gerarchia
Classe CSettingsStore