分享方式:


CSettingsStore 類別

包裝 Windows 應用程式開發介面函式,提供用來存取登錄的物件導向介面。

語法

class CSettingsStore : public CObject

成員

公用建構函式

名稱 描述
CSettingsStore::CSettingsStore 建構 CSettingsStore 物件。

公用方法

名稱 描述
CSettingsStore::Close 關閉開啟的登錄機碼。
CSettingsStore::CreateKey 開啟指定的索引鍵,如果不存在,則會建立它。
CSettingsStore::D eleteKey 刪除指定的索引鍵及其所有子系。
CSettingsStore::D eleteValue 刪除開啟索引鍵的指定值。
CSettingsStore::Open 開啟指定的索引鍵。
CSettingsStore::Read 擷取指定索引鍵值的數據。
CSettingsStore::Write 將值寫入開啟機碼下的登錄。

備註

成員函式 CreateKeyOpen 非常類似。 如果登錄機碼已經存在, CreateKey 並以 Open 相同的方式運作。 不過,如果登錄機碼不存在,則會建立它, CreateKeyOpen 會傳回錯誤值。

範例

下列範例示範如何使用 類別的 CSettingsStore Open 和 Read 方法。 此代碼段是工具提示示範範例一部分。

CSettingsStore reg(FALSE, TRUE);
DWORD dwEnableBalloonTips = 1;

if (reg.Open(_T("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced")) &&
    reg.Read(_T("EnableBalloonTips"), dwEnableBalloonTips))
{
   return dwEnableBalloonTips == 1;
}

繼承階層架構

CObject

CSettingsStore

需求

標頭: afxsettingsstore.h

CSettingsStore::Close

關閉開啟的登錄機碼。

virtual void Close();

備註

根據預設,此方法會從 CSettingsStore 類別解構函式呼叫。

CSettingsStore::CreateKey

開啟登錄機碼,如果登錄機碼不存在,則會加以建立。

virtual BOOL CreateKey(LPCTSTR pszPath);

參數

pszPath
[in]指定要建立或開啟之金鑰的名稱。

傳回值

如果成功,則為 0;否則為非零值。

備註

CreateKey 使用 m_hKey 做為登錄查詢的根目錄。 它會搜尋 pszPath 做為 的 m_hKey子機碼。 如果機碼不存在, CreateKey 請加以建立。 否則,它會開啟金鑰。 CreateKey 然後將 設定 m_hKey 為已建立或開啟的索引鍵。

CSettingsStore::CSettingsStore

建立 CSettngsStore 物件。

CSettingsStore(
    BOOL bAdmin,
    BOOL bReadOnly);

參數

bAdmin
[in]布爾參數,指定物件是否 CSettingsStore 在系統管理員模式中運作。

bReadOnly
[in]布爾參數,指定物件是否 CSettingsStore 以唯讀模式建立。

備註

如果 bAdmin 設定為 TRUE,則 m_hKey 成員變數會設定為 HKEY_LOCAL_MACHINE。 如果您將 bAdmin 設定為 FALSE,m_hKey則會設定為 HKEY_CURRENT_USER

安全性存取取決於 bReadOnly 參數。 如果 bReadonly 為 FALSE,安全性存取將會設定為 KEY_ALL_ACCESS。 如果 bReadyOnly 為 TRUE,安全性存取權將會設定為KEY_QUERY_VALUE、KEY_NOTIFYKEY_ENUMERATE_SUB_KEYS的組合。 如需安全性存取與登錄的詳細資訊,請參閱 登錄機碼安全性和訪問許可權

自動發行的CSettingsStorem_hKey解構函式。

CSettingsStore::D eleteKey

從登錄中刪除機碼及其所有子系。

virtual BOOL DeleteKey(
    LPCTSTR pszPath,
    BOOL bAdmin = FALSE);

參數

pszPath
[in]要刪除的索引鍵名稱。

bAdmin
[in]參數,指定要刪除之索引鍵的位置。

傳回值

如果成功則為非零;否則為 0。

備註

如果對象處於唯讀模式, CSettingsStore 這個方法將會失敗。

如果參數 bAdmin 為零, DeleteKey 請在 [HKEY_CURRENT_USER] 下 搜尋要刪除的索引鍵。 如果 bAdmin 為非零,DeleteKey請在 [HKEY_LOCAL_MACHINE] 下搜尋要刪除的索引鍵。

CSettingsStore::D eleteValue

m_hKey刪除值。

virtual BOOL DeleteValue(LPCTSTR pszValue);

參數

pszValue
[in]指定要移除的值欄位。

傳回值

如果成功則為非零;否則為 0。

CSettingsStore::Open

開啟登錄機碼。

virtual BOOL Open(LPCTSTR pszPath);

參數

pszPath
[in]登錄機碼的名稱。

傳回值

如果成功則為非零;否則為 0。

備註

這個方法成功開啟指定的索引鍵之後,它會設定 m_hKey 為這個金鑰的句柄。

CSettingsStore::Read

從登錄中的機碼讀取值。

virtual BOOL Read(
    LPCTSTR pszKey,
    int& iVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    DWORD& dwVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    CString& sVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    CStringList& scStringList);

virtual BOOL Read(
    LPCTSTR pszKey,
    CStringArray& scArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CDWordArray& dwcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CWordArray& wcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CByteArray& bcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    LPPOINT& lpPoint);

virtual BOOL Read(
    LPCTSTR pszKey,
    CRect& rect);

virtual BOOL Read(
    LPCTSTR pszKey,
    BYTE** ppData,
    UINT* pBytes);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObList& list);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObject& obj);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObject*& pObj);

參數

pszKey
[in]Null 終止字串的指標,其中包含要從登錄讀取之值的名稱。

iVal
[out]從登錄機碼讀取值的整數變數參考。

dwVal
[out]從登錄機碼讀取值的32位雙字變數參考。

sVal
[out]從登錄機碼讀取值的字串變數參考。

scStringList
[out]從登錄機碼讀取值的字串清單變數參考。

scArray
[out]從登錄機碼讀取值的字串數位變數參考。

dwcArray
[out]從登錄機碼讀取值的32位雙字數位變數參考。

wcArray
[out]從登錄機碼讀取值的16位字數位變數參考。

bcArray
[out]從登錄機碼讀取值的位元組數位變數參考。

lpPoint
[out]從登錄機碼讀取值之結構的指標 POINT 參考。

rect
[out] 從登錄機碼讀取值的 CRect 變數參考。

ppData
[out]從登錄機碼讀取值之數據的指標指標。

pBytes
[out]無符號整數變數的指標。 此變數會接收 ppData 指向的緩衝區大小。

清單
[out] 從登錄機碼讀取值的 CObList 變數參考。

obj
[out] 從登錄機碼讀取值的 CObject 變數參考。

pObj
[out]從登錄機碼讀取值之變數的指標 CObject 參考。

傳回值

如果成功則為非零;否則為 0。

備註

Read會檢查 pszKey 做為 的m_hKey子機碼。

CSettingsStore::Write

將值寫入開啟機碼下的登錄。

virtual BOOL Write(
    LPCTSTR pszKey,
    int iVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    DWORD dwVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPCTSTR pszVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    CStringList& scStringList);

virtual BOOL Write(
    LPCTSTR pszKey,
    CByteArray& bcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CStringArray& scArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CDWordArray& dwcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CWordArray& wcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    const CRect& rect);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPPOINT& lpPoint);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPBYTE pData,
    UINT nBytes);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObList& list);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObject& obj);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObject* pObj);

參數

pszKey
[in]字串的指標,其中包含要設定之值的名稱。

iVal
[in]包含要儲存之數據的整數變數參考。

dwVal
[in]包含要儲存之數據的32位雙字變數參考。

pszVal
[in]包含要儲存之數據的 Null 終止字串變數指標。

scStringList
[in] 包含要儲存之數據的 CStringList 變數參考。

bcArray
[in]位元組數位變數的參考,其中包含要儲存的數據。

scArray
[in]字串數位變數的參考,其中包含要儲存的數據。

dwcArray
[in]包含要儲存之數據的32位雙字數位變數參考。

wcArray
[in]包含要儲存之數據的16位文字數位變數參考。

rect
[in] 包含要儲存之數據的 CRect 變數參考。

lpPoint
[in]包含要儲存之數據的變數指標 POINT 參考。

pData
[in]包含要儲存之數據的緩衝區指標。

nBytes
[in]指定 pData 參數所指向之數據的大小,以位元組為單位。

清單
[in] 包含要儲存之數據的 CObList 變數參考。

obj
[in] 包含要儲存之數據的 CObject 變數參考。

pObj
[in]包含要儲存之數據的變數指標 CObject 指標。

傳回值

如果成功,則為 TRUE,否則為 FALSE。

備註

若要寫入登錄,您必須在建立 CSettingsStore 物件時,將 bReadOnly 設定為非零值。 如需詳細資訊,請參閱 CSettingsStore::CSettingsStore

另請參閱

階層架構圖表
類別
CWinAppEx 類別