分享方式:


CSettingsStoreSP 類別

類別 CSettingsStoreSP 是一個協助程式類別,可用來建立 C設定Store 類別 實例。

語法

class CSettingsStoreSP

成員

公用建構函式

名稱 描述
C設定StoreSP::C設定StoreSP 建構 CSettingsStoreSP 物件。

公用方法

名稱 描述
C設定StoreSP::Create 建立衍生自 CSettingsStore 之類別的實例。
C設定StoreSP::SetRuntimeClass 設定執行時間類別。 方法 Create 會使用執行時間類別來判斷要建立的物件類別。

資料成員

名稱 描述
m_dwUserData 儲存在 物件中的 CSettingsStoreSP 自訂使用者資料。 您會在 物件的建構函式 CSettingsStoreSP 中提供此資料。
m_pRegistry 方法 CSettingsStore 所建立的衍生物件 Create

備註

您可以使用 類別 CSettingsStoreSP 將所有 MFC 登錄作業重新導向至其他位置,例如 XML 檔案或資料庫。 若要這麼做,請執行下列步驟:

  1. 建立類別(例如 CMyStore ),並從 衍生自 CSettingsStore

  2. 搭配自訂 CSettingsStore 類別使用 DECLARE_DYNCREATE IMPLEMENT_DYNCREATE 宏,以啟用動態建立。

  3. 覆寫虛擬函式,並在您的自訂類別中實 Read 作 和 Write 函式。 實作任何其他功能,以讀取和寫入資料到您想要的位置。

  4. 在您的應用程式中,呼叫 CSettingsStoreSP::SetRuntimeClass 並傳入從類別取得之 CRuntimeClass 結構的 指標。

每當架構通常會存取登錄時,它現在就會動態具現化您的自訂類別,並用它來讀取或寫入資料。

CSettingsStoreSP::SetRuntimeClass 使用全域靜態變數。 因此,一次只能使用一個自訂存放區。

需求

標頭: afxsettingsstore.h

C設定StoreSP::Create

建立衍生自 C設定Store 類別 之 物件的新實例。

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

參數

b管理員
[in]布林參數,決定物件是否 CSettingsStore 以系統管理員模式建立。

bReadOnly
[in]布林參數,決定是否 CSettingsStore 為唯讀存取建立物件。

傳回值

新建立 CSettingsStore 物件的參考。

備註

您可以使用 C設定StoreSP::SetRuntimeClass 方法來 判斷將建立的物件 CSettingsStoreSP::Create 類型。 根據預設,這個方法會 CSettingsStore 建立 物件。

如果您在系統管理員模式中建立 CSettingsStore 物件,則會HKEY_LOCAL_MACHINE所有登錄存取的預設位置。 否則,所有登錄存取的預設位置都會HKEY_CURRENT_USER。

如果 b管理員 為 TRUE,則應用程式必須具有系統管理許可權。 否則,它會在嘗試存取登錄時失敗。

範例

下列範例示範如何使用 Create 類別的 CSettingsStoreSP 方法。

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

C設定StoreSP::C設定StoreSP

建構 C設定StoreSP 類別 物件。

CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);

參數

dwUserData
[in]物件儲存的使用者 CSettingsStoreSP 定義資料。

備註

物件 CSettingsStoreSP 會將 dwUserData 中的資料 儲存在受保護的成員變數 m_dwUserData 中。

C設定StoreSP::SetRuntimeClass

設定執行時間類別。 C設定StoreSP::Create 方法 會使用執行時間類別來判斷要建立的物件類型。

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

參數

pRTI
[in]衍生自 C設定Store 類別 之類別之 執行時間類別資訊的指標。

傳回值

如果成功,則為 TRUE;如果 pRTI 識別的類別不是衍生自 CSettingsStore ,則為 FALSE。

備註

您可以使用 C設定StoreSP 類別 CSettingsStore 衍生類別。 如果您想要建立衍生自 CSettingsStore 的自訂類別物件,請使用 方法 SetRuntimeClass

另請參閱

類別
階層架構圖表
CSettingsStore 類別