CSettingsStoreSP (clase)
La clase CSettingsStoreSP
es una clase asistente que puede usar para crear instancias de CSettingsStore (clase).
Sintaxis
class CSettingsStoreSP
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CSettingsStoreSP::CSettingsStoreSP | Construye un objeto CSettingsStoreSP . |
Métodos públicos
Nombre | Descripción |
---|---|
CSettingsStoreSP::Create | Crea una instancia de una clase derivada de CSettingsStore . |
CSettingsStoreSP::SetRuntimeClass | Establece la clase en tiempo de ejecución. El método Create usa la clase en tiempo de ejecución para determinar qué clase de objetos se van a crear. |
Miembros de datos
Nombre | Descripción |
---|---|
m_dwUserData |
Datos de usuario personalizados que se almacenan en el objeto CSettingsStoreSP . Estos datos se proporcionan en el constructor del objeto CSettingsStoreSP . |
m_pRegistry |
El objeto derivado CSettingsStore que crea el método Create . |
Comentarios
Puede usar la clase CSettingsStoreSP
para redirigir todas las operaciones de registro de MFC a otras ubicaciones, como un archivo XML o una base de datos. Para ello, siga estos pasos:
Cree una clase (como
CMyStore
) y derívela deCSettingsStore
.Use las macros DECLARE_DYNCREATE y IMPLEMENT_DYNCREATE con la clase personalizada
CSettingsStore
para habilitar la creación dinámica.Invalide las funciones virtuales e implemente las funciones
Read
yWrite
en la clase personalizada. Implemente cualquier otra funcionalidad para leer y escribir datos en la ubicación deseada.En la aplicación, llame
CSettingsStoreSP::SetRuntimeClass
y pase un puntero a la Estructura CRuntimeClass obtenida de la clase.
Cada vez que el marco acceda normalmente al registro, ahora creará una instancia dinámica de la clase personalizada y la usará para leer o escribir datos.
CSettingsStoreSP::SetRuntimeClass
usa una variable estática global. Por lo tanto, solo hay un almacén personalizado disponible a la vez.
Requisitos
Encabezado: afxsettingsstore.h
CSettingsStoreSP::Create
Crea una nueva instancia de un objeto derivado de CSettingsStore (clase).
CSettingsStore& CSettingsStoreSP Create(
BOOL bAdmin,
BOOL bReadOnly);
Parámetros
bAdmin
[in] Un parámetro booleano que determina si un objeto CSettingsStore
se crea en modo de administrador.
bReadOnly
[in] Un parámetro booleano que determina si un objeto CSettingsStore
se crea para acceso de solo lectura.
Valor devuelto
Referencia al objeto CSettingsStore
recién creado.
Comentarios
Puede usar el método CSettingsStoreSP::SetRuntimeClass para determinar que tipo de objeto CSettingsStoreSP::Create
se creará. De forma predeterminada, este método crea un objeto CSettingsStore
.
Si crea un objeto CSettingsStore
en modo de administrador, la ubicación predeterminada para todo el acceso al Registro es HKEY_LOCAL_MACHINE. De lo contrario, la ubicación predeterminada para todo el acceso al registro es HKEY_CURRENT_USER.
Si bAdmin es TRUE, la aplicación debe tener derechos de administración. De lo contrario, se producirá un error cuando intente acceder al registro.
Ejemplo
En el siguiente ejemplo se muestra cómo se utiliza el método Create
de la clase CSettingsStoreSP
.
CSettingsStoreSP regSP;
CSettingsStore ® = regSP.Create(FALSE, TRUE);
CSettingsStoreSP::CSettingsStoreSP
Construye un objeto CSettingsStoreSP (clase).
CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);
Parámetros
dwUserData
[in] Datos definidos por el usuario que almacena el objeto CSettingsStoreSP
.
Comentarios
El objeto CSettingsStoreSP
almacena los datos de dwUserData en la variable miembro m_dwUserData
protegida.
CSettingsStoreSP::SetRuntimeClass
Establece la clase en tiempo de ejecución. El método CSettingsStoreSP::Create usa la clase en tiempo de ejecución para determinar qué tipo de objeto se va a crear.
static BOOL __stdcall CSettingsStoreSP::SetRuntimeClass(CRuntimeClass* pRTI);
Parámetros
pRTI
[in] Puntero a la información de la clase en tiempo de ejecución para una clase derivada de CSettingsStore (clase).
Valor devuelto
TRUE si se realiza correctamente; FALSE si la clase identificada por pRTI no se deriva de CSettingsStore
.
Comentarios
Puede usar CSettingsStoreSP (clase) para derivar clases de CSettingsStore
. Use el método SetRuntimeClass
si desea crear objetos de una clase personalizada derivada de CSettingsStore
.