Udostępnij za pośrednictwem


Klasa CSettingsStore

Opakowuje funkcje interfejsu API systemu Windows, udostępniając interfejs obiektowy używany do uzyskiwania dostępu do rejestru.

Składnia

class CSettingsStore : public CObject

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CSettingsStore::CSettingsStore CSettingsStore Tworzy obiekt.

Metody publiczne

Nazwa/nazwisko opis
CSettingsStore::Close Zamyka otwarty klucz rejestru.
CSettingsStore::CreateKey Otwiera określony klucz lub tworzy go, jeśli nie istnieje.
CSettingsStore::D eleteKey Usuwa określony klucz i wszystkie jego elementy podrzędne.
CSettingsStore::D eleteValue Usuwa określoną wartość otwartego klucza.
CSettingsStore::Open Otwiera określony klucz.
CSettingsStore::Read Pobiera dane dla określonej wartości klucza.
CSettingsStore::Write Zapisuje wartość w rejestrze pod otwartym kluczem.

Uwagi

Funkcje CreateKey składowe i Open są bardzo podobne. Jeśli klucz rejestru już istnieje i CreateKey Open działa w ten sam sposób. Jeśli jednak klucz rejestru nie istnieje, zostanie utworzony, CreateKey podczas gdy Open zwróci wartość błędu.

Przykład

W poniższym przykładzie pokazano, jak używać metod CSettingsStore Open i Read klasy . Ten fragment kodu jest częścią przykładu Pokaz porad narzędzia.

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;
}

Hierarchia dziedziczenia

Obiekt CObject

CSettingsStore

Wymagania

Nagłówek: afxsettingsstore.h

CSettingsStore::Close

Zamyka otwarty klucz rejestru.

virtual void Close();

Uwagi

Domyślnie ta metoda jest wywoływana z destruktora klasy CSettingsStore.

CSettingsStore::CreateKey

Otwiera klucz rejestru lub tworzy go, jeśli nie istnieje.

virtual BOOL CreateKey(LPCTSTR pszPath);

Parametry

pszPath
[in] Określa nazwę klucza, który ma zostać utworzony lub otwarty.

Wartość zwracana

0 w przypadku powodzenia; w przeciwnym razie wartość niezerowa.

Uwagi

CreateKey używa m_hKey jako katalogu głównego zapytań rejestru. Wyszukuje ciąg pszPath jako podklucz .m_hKey Jeśli klucz nie istnieje, CreateKey tworzy go. W przeciwnym razie zostanie otwarty klucz. CreateKey następnie ustawia m_hKey wartość utworzonego lub otwartego klucza.

CSettingsStore::CSettingsStore

Tworzy obiekt CSettngsStore.

CSettingsStore(
    BOOL bAdmin,
    BOOL bReadOnly);

Parametry

bAdmin
[in] Parametr logiczny określający, czy CSettingsStore obiekt działa w trybie administratora.

bReadOnly
[in] Parametr logiczny określający, czy CSettingsStore obiekt jest tworzony w trybie tylko do odczytu.

Uwagi

Jeśli parametr bAdmin ma wartość TRUE, zmienna m_hKey składowa jest ustawiona na HKEY_LOCAL_MACHINE. Jeśli ustawisz wartość bAdmin na FAŁSZ, m_hKey zostanie ustawiona wartość HKEY_CURRENT_USER.

Dostęp do zabezpieczeń zależy od parametru bReadOnly . Jeśli wartość bReadonly ma wartość FALSE, dostęp zabezpieczeń zostanie ustawiony na KEY_ALL_ACCESS. Jeśli parametr bReadyOnly ma wartość TRUE, dostęp zabezpieczeń zostanie ustawiony na kombinację KEY_QUERY_VALUE, KEY_NOTIFY i KEY_ENUMERATE_SUB_KEYS. Aby uzyskać więcej informacji na temat dostępu zabezpieczeń razem z rejestrem, zobacz Zabezpieczenia klucza rejestru i prawa dostępu.

Destruktor dla CSettingsStore wydań m_hKey jest automatycznie.

CSettingsStore::D eleteKey

Usuwa klucz i wszystkie jego elementy podrzędne z rejestru.

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

Parametry

pszPath
[in] Nazwa klucza do usunięcia.

bAdmin
[in] Przełącznik określający lokalizację klucza do usunięcia.

Wartość zwracana

Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.

Uwagi

Ta metoda zakończy się niepowodzeniem CSettingsStore , jeśli obiekt jest w trybie tylko do odczytu.

Jeśli parametr bAdmin ma wartość zero, DeleteKey wyszukuje klucz do usunięcia w HKEY_CURRENT_USER. Jeśli bAdmin nie jestzero, DeleteKey wyszukuje klucz do usunięcia w HKEY_LOCAL_MACHINE.

CSettingsStore::D eleteValue

Usuwa wartość z m_hKey.

virtual BOOL DeleteValue(LPCTSTR pszValue);

Parametry

pszValue
[in] Określa pole wartości do usunięcia.

Wartość zwracana

Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.

CSettingsStore::Open

Otwiera klucz rejestru.

virtual BOOL Open(LPCTSTR pszPath);

Parametry

pszPath
[in] Nazwa klucza rejestru.

Wartość zwracana

Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.

Uwagi

Po pomyślnym otworzie określonego klucza ta metoda zostanie ustawiona m_hKey na uchwyt tego klucza.

CSettingsStore::Read

Odczytuje wartość z klucza w rejestrze.

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);

Parametry

pszKey
[in] Wskaźnik do ciągu zakończonego wartości null, który zawiera nazwę wartości do odczytu z rejestru.

iVal
[out] Odwołanie do zmiennej całkowitej, która odbiera wartość odczytaną z klucza rejestru.

dwVal
[out] Odwołanie do 32-bitowej zmiennej podwójnego słowa, która odbiera wartość odczytaną z klucza rejestru.

sVal
[out] Odwołanie do zmiennej ciągu, która odbiera wartość odczytaną z klucza rejestru.

scStringList
[out] Odwołanie do zmiennej listy ciągów, która odbiera wartość odczytaną z klucza rejestru.

scArray
[out] Odwołanie do zmiennej tablicy ciągów, która odbiera wartość odczytaną z klucza rejestru.

dwcArray
[out] Odwołanie do 32-bitowej zmiennej tablicy słów, która odbiera wartość odczytaną z klucza rejestru.

wcArray
[out] Odwołanie do 16-bitowej zmiennej tablicy wyrazów, która odbiera wartość odczytaną z klucza rejestru.

bcArray
[out] Odwołanie do zmiennej tablicy bajtów, która odbiera wartość odczytaną z klucza rejestru.

lpPoint
[out] Odwołanie do wskaźnika do POINT struktury, która odbiera wartość odczytaną z klucza rejestru.

Rect
[out] Odwołanie do zmiennej CRect , która odbiera wartość odczytaną z klucza rejestru.

ppData
[out] Wskaźnik do wskaźnika do danych, które odbiera wartość odczytaną z klucza rejestru.

Liczba bajtów pBytes
[out] Wskaźnik do niepodpisanej zmiennej całkowitej. Ta zmienna odbiera rozmiar buforu, do którego wskazuje ppData .

lista
[out] Odwołanie do zmiennej CObList , która odbiera wartość odczytaną z klucza rejestru.

Obj
[out] Odwołanie do zmiennej CObject , która odbiera wartość odczytaną z klucza rejestru.

pObj
[out] Odwołanie do wskaźnika do zmiennej CObject , która odbiera wartość odczytaną z klucza rejestru.

Wartość zwracana

Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.

Uwagi

Readsprawdza wartość pszKey jako podklucz .m_hKey

CSettingsStore::Write

Zapisuje wartość w rejestrze pod otwartym kluczem.

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);

Parametry

pszKey
[in] Wskaźnik do ciągu, który zawiera nazwę wartości do ustawienia.

iVal
[in] Odwołanie do zmiennej całkowitej zawierającej dane do przechowywania.

dwVal
[in] Odwołanie do 32-bitowej zmiennej podwójnego słowa zawierającej dane do przechowywania.

pszVal
[in] Wskaźnik do zmiennej ciągu zakończonej wartością null, która zawiera dane do przechowywania.

scStringList
[in] Odwołanie do zmiennej CStringList zawierającej dane do przechowywania.

bcArray
[in] Odwołanie do zmiennej tablicy bajtów zawierającej dane do przechowywania.

scArray
[in] Odwołanie do zmiennej tablicy ciągów zawierającej dane do przechowywania.

dwcArray
[in] Odwołanie do 32-bitowej zmiennej tablicy wyrazów zawierającej dane do przechowywania.

wcArray
[in] Odwołanie do 16-bitowej zmiennej tablicy wyrazów zawierającej dane do przechowywania.

Rect
[in] Odwołanie do zmiennej CRect zawierającej dane do przechowywania.

lpPoint
[in] Odwołanie do wskaźnika do zmiennej POINT zawierającej dane do przechowywania.

pData
[in] Wskaźnik do buforu zawierającego dane do przechowywania.

nBajty
[in] Określa rozmiar w bajtach danych, do których wskazuje parametr pData .

lista
[in] Odwołanie do zmiennej CObList zawierającej dane do przechowywania.

Obj
[in] Odwołanie do zmiennej CObject zawierającej dane do przechowywania.

pObj
[in] Wskaźnik do wskaźnika do CObject zmiennej zawierającej dane do przechowywania.

Wartość zwracana

Wartość TRUE, jeśli operacja zakończyła się pomyślnie; w przeciwnym razie FAŁSZ.

Uwagi

Aby zapisać w rejestrze, należy ustawić wartość bReadOnly na wartość niezerową podczas tworzenia obiektu CSettingsStore . Aby uzyskać więcej informacji, zobacz CSettingsStore::CSettingsStore.

Zobacz też

Wykres hierarchii
Klasy
Klasa CWinAppEx