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 檔案或資料庫。 若要這樣做,請遵循下列步驟:
建立類別(例如
CMyStore
),並從 衍生自CSettingsStore
。搭配自定義
CSettingsStore
類別使用DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE宏,以啟用動態建立。覆寫虛擬函式,並在您的自定義類別中實
Read
作 和Write
函式。 實作任何其他功能,以讀取和寫入數據到您想要的位置。在您的應用程式中,呼叫
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 ® = regSP.Create(FALSE, TRUE);
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;如果 pRTI 所識別的類別不是衍生自 CSettingsStore
,則為 FALSE。
備註
您可以使用 CSettingsStoreSP 類別 從 CSettingsStore
衍生類別。 如果您想要建立衍生自 CSettingsStore
的自定義類別物件,請使用 方法SetRuntimeClass
。