Поделиться через


Класс CSettingsStoreSP

Класс CSettingsStoreSP является вспомогательным классом, который можно использовать для создания экземпляров класса CSettingsStore.

Синтаксис

class CSettingsStoreSP

Участники

Открытые конструкторы

Имя Описание
CSettingsStoreSP::CSettingsStoreSP Формирует объект CSettingsStoreSP.

Открытые методы

Имя Описание
CSettingsStoreSP::Create Создает экземпляр класса, производный от CSettingsStore.
CSettingsStoreSP::SetRuntimeClass Задает класс среды выполнения. Метод Create использует класс среды выполнения для определения того, какой класс объектов нужно создать.

Элементы данных

Имя Описание
m_dwUserData Пользовательские данные пользователя, хранящиеся в объекте CSettingsStoreSP . Эти данные предоставляются в конструкторе CSettingsStoreSP объекта.
m_pRegistry Производный CSettingsStoreот метода объект Create .

Замечания

Класс можно использовать CSettingsStoreSP для перенаправления всех операций реестра MFC в другие расположения, например XML-файл или базу данных. Для этого выполните следующие шаги.

  1. Создайте класс (напримерCMyStore) и наследуйте его.CSettingsStore

  2. Используйте макросы DECLARE_DYNCREATE и IMPLEMENT_DYNCREATE с пользовательским CSettingsStore классом, чтобы включить динамическое создание.

  3. Переопределите виртуальные функции и реализуйте Read Write их в пользовательском классе. Реализуйте любые другие функции для чтения и записи данных в нужное расположение.

  4. В приложении вызовите и передайте CSettingsStoreSP::SetRuntimeClass указатель на структуру CRuntimeClass, полученную из класса.

Каждый раз, когда платформа будет получать доступ к реестру, теперь она будет динамически создавать экземпляр пользовательского класса и использовать его для чтения или записи данных.

CSettingsStoreSP::SetRuntimeClass использует глобальную статическую переменную. Поэтому одновременно доступно только одно пользовательское хранилище.

Требования

Заголовок: afxsettingsstore.h

CSettingsStoreSP::Create

Создает новый экземпляр объекта, производный от класса CSettingsStore.

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

Параметры

bAdmin
[in] Логический параметр, определяющий, создается ли CSettingsStore объект в режиме администратора.

bReadOnly
[in] Логический параметр, определяющий, создается ли CSettingsStore объект для доступа только для чтения.

Возвращаемое значение

Ссылка на только что созданный CSettingsStore объект.

Замечания

Метод CSettingsStoreSP::SetRuntimeClass можно использовать для определения типа создаваемого объектаCSettingsStoreSP::Create. По умолчанию этот метод создает CSettingsStore объект.

Если вы создаете CSettingsStore объект в режиме администратора, расположение по умолчанию для всех доступа к реестру HKEY_LOCAL_MACHINE. В противном случае расположение по умолчанию для всех доступа к реестру HKEY_CURRENT_USER.

Если bAdmin имеет значение TRUE, приложение должно иметь права администрирования. В противном случае он завершится ошибкой при попытке получить доступ к реестру.

Пример

В следующем примере показано, как использовать Create метод CSettingsStoreSP класса.

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

CSettingsStoreSP::CSettingsStoreSP

Создает объект класса CSettingsStoreSP.

CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);

Параметры

dwUserData
[in] Определяемые пользователем CSettingsStoreSP данные, которые хранит объект.

Замечания

Объект CSettingsStoreSP сохраняет данные из dwUserData в защищенной переменной-члене m_dwUserData.

CSettingsStoreSP::SetRuntimeClass

Задает класс среды выполнения. Метод CSettingsStoreSP::Create использует класс среды выполнения для определения типа создаваемого объекта.

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

Параметры

pRTI
[in] Указатель на сведения о классе среды выполнения для класса, производный от класса CSettingsStore.

Возвращаемое значение

Значение TRUE, если выполнено успешно; ЗНАЧЕНИЕ FALSE, если класс, определенный pRTI, не является производным от CSettingsStore.

Замечания

Класс CSettingsStoreSP можно использовать для получения классов.CSettingsStore Используйте метод SetRuntimeClass , если вы хотите создать объекты пользовательского класса, производного от CSettingsStore.

См. также

Классы
Диаграмма иерархии
Класс CSettingsStore