Classe CSettingsStoreSP
A CSettingsStoreSP
classe é uma classe auxiliar que você pode usar para criar instâncias da classe CSettingsStore.
Sintaxe
class CSettingsStoreSP
Membros
Construtores públicos
Name | Descrição |
---|---|
CSettingsStoreSP::CSettingsStoreSP | Constrói um objeto CSettingsStoreSP . |
Métodos públicos
Name | Descrição |
---|---|
CSettingsStoreSP:: criar | Cria uma instância de uma classe que é derivada de CSettingsStore . |
CSettingsStoreSP::SetRuntimeClass | Define a classe de tempo de execução. O Create método usa a classe Runtime para determinar qual classe de objetos criar. |
Membros de dados
Name | Descrição |
---|---|
m_dwUserData |
Dados de usuário personalizados que são armazenados no CSettingsStoreSP objeto. Você fornece esses dados no construtor do CSettingsStoreSP objeto. |
m_pRegistry |
O CSettingsStore objeto derivado que o Create método cria. |
Comentários
Você pode usar a CSettingsStoreSP
classe para redirecionar todas as operações de registro do MFC para outros locais, como um arquivo XML ou um banco de dados. Para fazer isso, siga estas etapas:
Crie uma classe (
CMyStore
como) e derive-a deCSettingsStore
.Use DECLARE_DYNCREATE e IMPLEMENT_DYNCREATE macros com sua classe personalizada
CSettingsStore
para habilitar a criação dinâmica.Substitua as funções virtuais e implemente as
Read
funções eWrite
em sua classe personalizada. Implemente qualquer outra funcionalidade para ler e gravar dados no local desejado.Em seu aplicativo, chame
CSettingsStoreSP::SetRuntimeClass
e transmita um ponteiro para a estrutura CRuntimeClass obtida da sua classe.
Sempre que a estrutura normalmente acessaria o registro, agora ele criará dinamicamente a classe personalizada e a usará para ler ou gravar dados.
CSettingsStoreSP::SetRuntimeClass
usa uma variável estática global. Portanto, apenas um repositório personalizado está disponível por vez.
Requisitos
Cabeçalho: afxsettingsstore. h
CSettingsStoreSP:: criar
Cria uma nova instância de um objeto derivado da classe CSettingsStore.
CSettingsStore& CSettingsStoreSP Create(
BOOL bAdmin,
BOOL bReadOnly);
Parâmetros
bAdmin
no Um parâmetro booliano que determina se um CSettingsStore
objeto é criado no modo de administrador.
bReadOnly
no Um parâmetro booliano que determina se um CSettingsStore
objeto é criado para acesso somente leitura.
Valor Retornado
Uma referência ao objeto recém-criado CSettingsStore
.
Comentários
Você pode usar o método CSettingsStoreSP:: SetRuntimeClass para determinar que tipo de objeto CSettingsStoreSP::Create
será criado. Por padrão, esse método cria um CSettingsStore
objeto.
Se você criar um CSettingsStore
objeto no modo de administrador, o local padrão para todo o acesso ao registro será HKEY_LOCAL_MACHINE. Caso contrário, o local padrão para todo o acesso ao registro é HKEY_CURRENT_USER.
Se bAdmin for true, o aplicativo deverá ter direitos de administração. Caso contrário, ocorrerá uma falha ao tentar acessar o registro.
Exemplo
O exemplo a seguir demonstra como usar o Create
método da CSettingsStoreSP
classe.
CSettingsStoreSP regSP;
CSettingsStore ® = regSP.Create(FALSE, TRUE);
CSettingsStoreSP::CSettingsStoreSP
Constrói um objeto de classe CSettingsStoreSP .
CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);
Parâmetros
dwUserData
no Dados definidos pelo usuário que o CSettingsStoreSP
objeto armazena.
Comentários
O CSettingsStoreSP
objeto armazena os dados de dwUserData na variável m_dwUserData
de membro protegido.
CSettingsStoreSP::SetRuntimeClass
Define a classe de tempo de execução. O método CSettingsStoreSP:: Create usa a classe Runtime para determinar o tipo de objeto a ser criado.
static BOOL __stdcall CSettingsStoreSP::SetRuntimeClass(CRuntimeClass* pRTI);
Parâmetros
pRTI
no Um ponteiro para as informações de classe de tempo de execução para uma classe derivada da classe CSettingsStore.
Valor Retornado
Verdadeiro se for bem-sucedido; FALSE se a classe identificada por pRTI não for derivada de CSettingsStore
.
Comentários
Você pode usar a classe CSettingsStoreSP para derivar classes de CSettingsStore
. Use o método SetRuntimeClass
se você quiser criar objetos de uma classe personalizada derivada de CSettingsStore
.